export interface Engine { free(): void; serializeToProtobuf(): Uint8Array; onChange(callback: Function): number; removeOnChangeCallback(callback_id: number): void; setSimSpecStart(value: number): Error | undefined; setSimSpecStop(value: number): Error | undefined; setSimSpecDt(value: number, is_reciprocal: boolean): Error | undefined; setSimSpecSavestep(value: number, is_reciprocal: boolean): Error | undefined; clearSimSpecSavestep(): void; setSimSpecMethod(method: number): Error | undefined; setSimSpecTimeUnits(value: string): Error | undefined; isSimulatable(): boolean; getModelVariableErrors(model_name: string): any; getModelVariableUnitErrors(model_name: string): any; getModelErrors(model_name: string): Array; addNewVariable(model_name: string, kind: string, name: string): Error | undefined; deleteVariable(model_name: string, ident: string): Error | undefined; addStocksFlow(model_name: string, stock: string, flow: string, dir: string): Error | undefined; removeStocksFlow(model_name: string, stock: string, flow: string, dir: string): Error | undefined; setEquation(model_name: string, ident: string, new_equation: string): Error | undefined; setUnits(model_name: string, ident: string, new_units: string): Error | undefined; setDocumentation(model_name: string, ident: string, new_docs: string): Error | undefined; setGraphicalFunction(model_name: string, ident: string, graphical_function_pb: Uint8Array): Error | undefined; removeGraphicalFunction(model_name: string, ident: string): Error | undefined; rename(model_name: string, old_name: string, new_name: string): Error | undefined; setView(model_name: string, view_off: number, view_pb: Uint8Array): Error | undefined; simRunToEnd(): void; simVarNames(): Array; simSeries(ident: string): Float64Array; simClose(): void; } export interface EquationError { free(): void; code: number; start: number; end: number; } export interface Error { free(): void; getDetails(): string | undefined; code: number; kind: number; } export interface UnitError { free(): void; get_details(): string | undefined; code: number; end: number; is_consistency_error: boolean; start: number; } export declare enum ErrorKind { Import = 0, Model = 1, Simulation = 2, Variable = 3 } export declare enum ErrorCode { NoError = 0, DoesNotExist = 1, XmlDeserialization = 2, VensimConversion = 3, ProtobufDecode = 4, InvalidToken = 5, UnrecognizedEOF = 6, UnrecognizedToken = 7, ExtraToken = 8, UnclosedComment = 9, UnclosedQuotedIdent = 10, ExpectedNumber = 11, UnknownBuiltin = 12, BadBuiltinArgs = 13, EmptyEquation = 14, BadModuleInputDst = 15, BadModuleInputSrc = 16, NotSimulatable = 17, BadTable = 18, BadSimSpecs = 19, NoAbsoluteReferences = 20, CircularDependency = 21, ArraysNotImplemented = 22, MultiDimensionalArraysNotImplemented = 23, BadDimensionName = 24, BadModelName = 25, MismatchedDimensions = 26, ArrayReferenceNeedsExplicitSubscripts = 27, DuplicateVariable = 28, UnknownDependency = 29, VariablesHaveErrors = 30, UnitDefinitionErrors = 31, Generic = 32, NoAppInUnits = 33, NoSubscriptInUnits = 34, NoIfInUnits = 35, NoUnaryOpInUnits = 36, BadBinaryOpInUnits = 37, NoConstInUnits = 38, ExpectedInteger = 39, ExpectedIntegerOne = 40, DuplicateUnit = 41, ExpectedModule = 42, ExpectedIdent = 43, UnitMismatch = 44 }