37 lines
881 B
TypeScript
37 lines
881 B
TypeScript
export type InputMode = 'text' | 'choice' | 'end';
|
|
export interface StoryTag {
|
|
key: string;
|
|
value?: string;
|
|
param?: string;
|
|
}
|
|
export interface ParagraphResult {
|
|
text: string;
|
|
tags: StoryTag[];
|
|
}
|
|
export interface ChoiceResult {
|
|
index: number;
|
|
text: string;
|
|
tags: StoryTag[];
|
|
category?: string;
|
|
letter?: string;
|
|
}
|
|
export interface TurnResult {
|
|
turnId: number;
|
|
paragraphs: ParagraphResult[];
|
|
choices: ChoiceResult[];
|
|
inputMode: InputMode;
|
|
globalTags?: StoryTag[];
|
|
gameState?: {
|
|
currentRoomId?: string;
|
|
score?: number;
|
|
moves?: number;
|
|
statusLine?: string;
|
|
endState?: {
|
|
type: 'intended' | 'error';
|
|
message?: string;
|
|
};
|
|
};
|
|
suggestions?: string[];
|
|
}
|
|
export declare function textToParagraphs(text: string, tags?: StoryTag[]): ParagraphResult[];
|