import { CallStack } from "./CallStack"; import { VariablesState } from "./VariablesState"; import { StringValue } from "./Value"; import { PushPopType } from "./PushPop"; import { Path } from "./Path"; import { Pointer } from "./Pointer"; import { Choice } from "./Choice"; import { Container } from "./Container"; import { InkObject } from "./Object"; import { Story } from "./Story"; import { SimpleJson } from "./SimpleJson"; export declare class StoryState { readonly kInkSaveStateVersion = 10; readonly kMinCompatibleLoadVersion = 8; onDidLoadState: (() => void) | null; ToJson(indented?: boolean): string; toJson(indented?: boolean): string; LoadJson(json: string): void; VisitCountAtPathString(pathString: string): number | null | undefined; VisitCountForContainer(container: Container | null): number; IncrementVisitCountForContainer(container: Container): void; RecordTurnIndexVisitToContainer(container: Container): void; TurnsSinceForContainer(container: Container): number; get callstackDepth(): number; get outputStream(): InkObject[]; get currentChoices(): Choice[]; get generatedChoices(): Choice[]; get currentErrors(): string[] | null; private _currentErrors; get currentWarnings(): string[] | null; private _currentWarnings; get variablesState(): VariablesState; set variablesState(value: VariablesState); private _variablesState; get callStack(): CallStack; get evaluationStack(): InkObject[]; private _evaluationStack; divertedPointer: Pointer; get currentTurnIndex(): number; set currentTurnIndex(value: number); private _currentTurnIndex; storySeed: number; previousRandom: number; didSafeExit: boolean; story: Story; get currentPathString(): string | null; get previousPathString(): string | null; get currentPointer(): Pointer; set currentPointer(value: Pointer); get previousPointer(): Pointer; set previousPointer(value: Pointer); get canContinue(): boolean; get hasError(): boolean; get hasWarning(): boolean; get currentText(): string | null; private _currentText; CleanOutputWhitespace(str: string): string; get currentTags(): string[] | null; private _currentTags; get currentFlowName(): string; get currentFlowIsDefaultFlow(): boolean; get aliveFlowNames(): string[] | null; get inExpressionEvaluation(): boolean; set inExpressionEvaluation(value: boolean); constructor(story: Story); GoToStart(): void; SwitchFlow_Internal(flowName: string | null): void; SwitchToDefaultFlow_Internal(): void; RemoveFlow_Internal(flowName: string | null): undefined; CopyAndStartPatching(forBackgroundSave: boolean): StoryState; RestoreAfterPatch(): void; ApplyAnyPatch(): void; ApplyCountChanges(container: Container, newCount: number, isVisit: boolean): void; WriteJson(writer: SimpleJson.Writer): undefined; LoadJsonObj(value: Record): undefined; ResetErrors(): void; ResetOutput(objs?: InkObject[] | null): void; PushToOutputStream(obj: InkObject | null): void; PopFromOutputStream(count: number): void; TrySplittingHeadTailWhitespace(single: StringValue): StringValue[] | null; PushToOutputStreamIndividual(obj: InkObject | null): undefined; TrimNewlinesFromOutputStream(): void; RemoveExistingGlue(): void; get outputStreamEndsInNewline(): boolean; get outputStreamContainsContent(): boolean; get inStringEvaluation(): boolean; PushEvaluationStack(obj: InkObject | null): undefined; PopEvaluationStack(): InkObject; PopEvaluationStack(numberOfObjects: number): InkObject[]; PeekEvaluationStack(): InkObject; ForceEnd(): void; TrimWhitespaceFromFunctionEnd(): void; PopCallStack(popType?: PushPopType | null): void; SetChosenPath(path: Path, incrementingTurnIndex: boolean): void; StartFunctionEvaluationFromGame(funcContainer: Container, args: any[]): void; PassArgumentsToEvaluationStack(args: any[] | null): void; TryExitFunctionEvaluationFromGame(): boolean; CompleteFunctionEvaluationFromGame(): any; AddError(message: string, isWarning: boolean): void; OutputStreamDirty(): void; private _visitCounts; private _turnIndices; private _outputStreamTextDirty; private _outputStreamTagsDirty; private _patch; private _currentFlow; private _aliveFlowNames; private _namedFlows; private readonly kDefaultFlowName; private _aliveFlowNamesDirty; }