/// /// import { IfStatementASTNode } from "../../../ast/ast_statements"; import { ConstructOutlet } from "../../../view/constructs/ConstructOutlet"; import { BlockContext, SemanticContext } from "../../compilation/contexts"; import { AnalyticConstruct } from "../../../analysis/predicates"; import { Bool } from "../../compilation/types"; import { SuccessfullyCompiled } from "../CPPConstruct"; import { CompiledExpression, Expression } from "../expressions/Expression"; import { RuntimeExpression } from "../expressions/RuntimeExpression"; import { Block, CompiledBlock, RuntimeBlock } from "./Block"; import { Statement, RuntimeStatement } from "./Statement"; import { IfStatementOutlet } from "../../../view/constructs/StatementOutlets"; export declare class IfStatement extends Statement { readonly construct_type = "if_statement"; readonly condition: Expression; readonly then: Block; readonly otherwise?: Block; static createFromAST(ast: IfStatementASTNode, context: BlockContext): IfStatement; constructor(context: BlockContext, ast: IfStatementASTNode, condition: Expression, then: Block, otherwise?: Block); createDefaultOutlet(this: CompiledIfStatement, element: JQuery, parent?: ConstructOutlet): IfStatementOutlet; isSemanticallyEquivalent_impl(other: AnalyticConstruct, equivalenceContext: SemanticContext): boolean; } export interface CompiledIfStatement extends IfStatement, SuccessfullyCompiled { readonly condition: CompiledExpression; readonly then: CompiledBlock; readonly otherwise?: CompiledBlock; } export declare class RuntimeIfStatement extends RuntimeStatement { readonly condition: RuntimeExpression; readonly then: RuntimeBlock; readonly otherwise?: RuntimeBlock; private index; constructor(model: CompiledIfStatement, parent: RuntimeStatement); private static upNextFns; protected upNextImpl(): void; stepForwardImpl(): void; }