UNPKG

mcp-casual-interview

Version:

MCP server for casual interview preparation workflow management

50 lines 1.9 kB
/** * Interview Workflow Term Models * * Domain vocabulary for casual interview preparation workflow. * These models represent the core business concepts and rules * for managing interview preparation progress. */ /** * 語彙「WorkflowState」 * domain type: value */ type WorkflowState = 'not_started' | 'information_initially_registered' | 'career_summary_created' | 'match_position_determined' | 'match_degree_prediagnosed' | 'attract_plan_determined' | 'completed'; /** * 語彙「NextActionPrompt」 * domain type: value */ type NextActionPrompt = { readonly message: string; }; type ValidationError = { type: 'InvalidFormat' | 'InvalidRange' | 'RequiredField' | 'BusinessRule'; message: string; }; type WorkflowError = { type: 'InvalidStateTransition' | 'InvalidWorkflowStep' | 'ValidationFailed'; message: string; }; export declare const WorkflowValues: { readonly NextActionPrompts: Record<"not_started" | "career_summary_created" | "match_position_determined" | "attract_plan_determined" | "completed" | "information_initially_registered" | "match_degree_prediagnosed", { readonly message: string; }>; }; export declare const WorkflowPolicies: { readonly StateTransitions: { /** * Validates if a state transition is allowed */ readonly canTransition: (from: WorkflowState, to: WorkflowState) => boolean; /** * Gets the next logical state in the workflow */ readonly getNextState: (current: WorkflowState) => WorkflowState | null; }; }; export declare const WorkflowErrors: { readonly createValidationError: (message: string) => ValidationError; readonly createWorkflowError: (type: WorkflowError["type"], message: string) => WorkflowError; }; export type { WorkflowState, NextActionPrompt, ValidationError, WorkflowError }; //# sourceMappingURL=index.d.ts.map