twilly
Version:
Node.js Twilio API abstraction layer for Express applications
30 lines (29 loc) • 1.16 kB
TypeScript
import { Action } from '../Actions';
import { FlowContext } from '../SmsCookie';
export declare type FlowActionResolver = (context: FlowContext, userContext?: any) => Action | Promise<Action>;
interface FlowAction {
name: string;
resolve: FlowActionResolver;
}
declare const FlowName: unique symbol;
declare const FlowActions: unique symbol;
export declare const FlowActionNames: unique symbol;
export declare const FlowSelectActionResolver: unique symbol;
export declare const FlowSelectActionName: unique symbol;
export declare const FlowSetName: unique symbol;
export default class Flow {
static validString(s: string): boolean;
static validFlowAction(fa: FlowAction): boolean;
private [FlowActions];
private [FlowName];
readonly [FlowActionNames]: Set<string>;
constructor();
readonly length: number;
readonly name: string;
addAction(name: string, resolve: FlowActionResolver): Flow;
addActions(...actions: (FlowAction | FlowAction[])[]): Flow;
[FlowSelectActionResolver](i: number): FlowActionResolver;
[FlowSelectActionName](i: number): string;
[FlowSetName](name: string): void;
}
export {};