import { ConditionDeclaration, MainAgent, Monitor, ProcedureDeclaration, ProcedureParameter, Struct, VariableDeclarator } from "@pseuco/lang"; import { TypeEnvironment } from "./TypeEnvironment"; export declare class ProceduresEnvironment extends TypeEnvironment { private readonly _enclosingClassDeclaration?; private readonly procedures; private readonly variables; private readonly conditions; private mainAgent; constructor(parentEnvironment: TypeEnvironment, _enclosingClassDeclaration?: Monitor | Struct | undefined); getDeclarationForVariableIdentifier(id: string): VariableDeclarator | ProcedureParameter | undefined; getDeclarationForConditionIdentifier(id: string): ConditionDeclaration | undefined; getDeclarationForProcedureIdentifier(id: string): ProcedureDeclaration | undefined; getDeclarationForMainAgent(): MainAgent | undefined; _addVariable(id: string, decl: VariableDeclarator | ProcedureParameter, calledOn: TypeEnvironment): TypeEnvironment; _addCondition(id: string, decl: ConditionDeclaration, calledOn: TypeEnvironment): TypeEnvironment; _addProcedure(id: string, decl: ProcedureDeclaration, calledOn: TypeEnvironment): TypeEnvironment; protected _setMainAgent(declaration: MainAgent, calledOn: TypeEnvironment): TypeEnvironment; get enclosingClassDeclarator(): Monitor | Struct | undefined; }