import { DisplayableActionContentType, DisplayableActionTypes } from "../../action/actionTypes"; import { GameState } from "../../../player/gameState"; import { TypedAction } from "../../action/actions"; import { Awaitable, Values } from "../../../../util/data"; import { Displayable } from "../../elements/displayable/displayable"; import type { CalledActionResult } from "../../gameTypes"; import { Scene } from "../../elements/scene"; import { Transform } from "../../elements/transform/transform"; import { Transition } from "../../elements/transition/transition"; import { Layer } from "../../elements/layer"; import { LogicAction } from "../../action/logicAction"; import { ActionExecutionInjection, ExecutedActionResult } from "../../action/action"; import { Story } from "../../elements/story"; export declare class DisplayableAction = Values, Self extends Displayable = Displayable, TransitionType extends Transition = Transition> extends TypedAction, T, Self> { static ActionTypes: { readonly action: "displayable:action"; readonly applyTransform: "displayable:applyTransform"; readonly applyTransition: "displayable:applyTransition"; readonly init: "displayable:init"; }; executeAction(gameState: GameState, injection: ActionExecutionInjection): ExecutedActionResult; applyTransform(state: GameState, element: Displayable, transform: Transform, injection: ActionExecutionInjection, onFinished?: () => void): Awaitable; applyTransition(state: GameState, element: Displayable, transition: TransitionType, injection: ActionExecutionInjection, onFinished?: () => void): Awaitable; initDisplayable(state: GameState, scene: Scene | null, element: Displayable, layer: Layer | null, isElement: boolean | undefined, injection: ActionExecutionInjection): Awaitable; stringify(_story: Story, _seen: Set, _strict: boolean): string; }