import { SqrlExecutionState } from "../execute/SqrlExecutionState"; import { FeatureMap, Manipulator } from "../api/execute"; import { StatementAst } from "../ast/Ast"; import { SqrlInstance } from "../function/Instance"; import { JsExecutionContext } from "../node/JsExecutionContext"; import { Filesystem } from "../api/filesystem"; import { Context } from "../api/ctx"; export interface MutationOptions { repeat: number; skipWait: boolean; } export declare type MutationCallback = (state: SqrlExecutionState, options: MutationOptions) => Promise; export declare class SqrlTest { private instance; executionContext: JsExecutionContext; statements: StatementAst[]; files: any; extendTimeout: () => void; allowPrivate: boolean; calculateCost: boolean; inputs: FeatureMap; mutate: MutationCallback | null; featureTimeout: number; manipulatorFactory: (() => Manipulator) | null; private filesystem; constructor(instance: SqrlInstance, props?: { files?: any; inputs?: FeatureMap; allowPrivate?: boolean; extendTimeout?: () => void; calculateCost?: boolean; mutate?: MutationCallback; featureTimeout?: number; filesystem?: Filesystem; manipulatorFactory?: () => Manipulator; }); run(ctx: Context, sqrl: string): Promise<{ codedErrors: any[]; executions: SqrlExecutionState[]; }>; runStatements(ctx: Context, statements: StatementAst[]): Promise<{ codedErrors: any[]; executions: SqrlExecutionState[]; }>; executeStatements(ctx: Context, statements: StatementAst[], waitExecute?: boolean): Promise; }