import { ScriptActionContentType, ScriptActionTypes } from "../../action/actionTypes";
import type { Script } from "../../elements/script";
import { GameState } from "../../../player/gameState";
import { TypedAction } from "../../action/actions";
import { ActionExecutionInjection } from "../action";
import { Story } from "../../elements/story";
import { LogicAction } from "../../action/logicAction";
export declare class ScriptAction<T extends typeof ScriptActionTypes[keyof typeof ScriptActionTypes] = typeof ScriptActionTypes[keyof typeof ScriptActionTypes]> extends TypedAction<ScriptActionContentType, T, Script> {
    static ActionTypes: {
        readonly action: "script:action";
    };
    executeAction(gameState: GameState, injection: ActionExecutionInjection): import("../action").ExecutedActionResult;
    stringify(_story: Story, _seen: Set<LogicAction.Actions>, _strict: boolean): string;
}
