toto-agent
Version:
Chatbot agent and reusable components for Toto platform
45 lines (44 loc) • 1.58 kB
TypeScript
export interface OnboardingData {
displayName?: string;
interests?: string[];
phone?: string;
phoneDeclined?: boolean;
phoneAsked?: boolean;
onboardingCompleted?: boolean;
firstName?: string;
platformIntroduced?: boolean;
phoneValidated?: boolean;
phoneNeedsCountryCode?: boolean;
smsCode?: string;
smsRequested?: boolean;
}
export interface OnboardingValidation {
isValid: boolean;
missingFields: string[];
suggestions: string[];
confidence: number;
}
/**
* Determine current onboarding step based on collected data
*/
export declare function determineCurrentStep(currentData: OnboardingData): string;
/**
* Validate onboarding data and provide suggestions for missing fields
*/
export declare function validateOnboardingData(data: OnboardingData): OnboardingValidation;
/**
* Clean and normalize extracted data
*/
export declare function cleanOnboardingData(data: OnboardingData): OnboardingData;
/**
* Generate context for AI agent based on current state
*/
export declare function generateOnboardingContext(currentData: OnboardingData, conversationHistory: any[], userMessage: string): string;
/**
* Extract basic data from user message (minimal, AI-first approach)
*/
export declare function extractBasicData(userMessage: string, currentData: OnboardingData): Partial<OnboardingData>;
/**
* AI-first data extraction - provides context to AI and validates results
*/
export declare function extractOnboardingData(userMessage: string, currentData: OnboardingData, aiResponse: string): OnboardingData;