import { StepLabelProps, StepLabelResult } from '@drincs/pixi-vn'; /** * Result of a {@link StepLabelType} execution. * * - `StepLabelResult`: a structured result consumed by the narration engine. * - `void`: the step completed without returning an explicit result. * - `string`: a simple token or message interpreted by higher-level logic. * * Prefer returning a well-typed {@link StepLabelResult} for anything that * needs to be consumed programmatically. Use plain strings only where a * lightweight, convention-based signal is sufficient and clearly documented * by the surrounding game logic. */ type StepLabelResultType = StepLabelResult | void | string; type StepLabelPropsType = StepLabelProps & T; /** * StepLabel is a function that will be executed as the game continues. */ type StepLabelType = (props: StepLabelPropsType, info: { /** * The id of the label. */ labelId: string; }) => StepLabelResultType | Promise; export type { StepLabelPropsType as S, StepLabelResultType as a, StepLabelType as b };