/**
 * 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