import { z } from 'zod';

export declare const SCHEMA_VERSION = "1.1.0";
export declare const SensoryPreferencesSchema: z.ZodObject<{
    motionReduction: z.ZodDefault<z.ZodBoolean>;
    highContrast: z.ZodDefault<z.ZodBoolean>;
    colorVisionFilter: z.ZodDefault<z.ZodEnum<["none", "protanopia", "deuteranopia", "tritanopia"]>>;
    fontSize: z.ZodDefault<z.ZodNumber>;
    reducedFlashing: z.ZodDefault<z.ZodBoolean>;
    darkMode: z.ZodDefault<z.ZodBoolean>;
}, "strip", z.ZodTypeAny, {
    motionReduction: boolean;
    highContrast: boolean;
    colorVisionFilter: "none" | "protanopia" | "deuteranopia" | "tritanopia";
    fontSize: number;
    reducedFlashing: boolean;
    darkMode: boolean;
}, {
    motionReduction?: boolean | undefined;
    highContrast?: boolean | undefined;
    colorVisionFilter?: "none" | "protanopia" | "deuteranopia" | "tritanopia" | undefined;
    fontSize?: number | undefined;
    reducedFlashing?: boolean | undefined;
    darkMode?: boolean | undefined;
}>;
export declare const CognitivePreferencesSchema: z.ZodObject<{
    readingSpeed: z.ZodDefault<z.ZodEnum<["slow", "medium", "fast"]>>;
    explanationLevel: z.ZodDefault<z.ZodEnum<["simple", "detailed", "expert"]>>;
    processingPace: z.ZodDefault<z.ZodEnum<["relaxed", "standard", "quick"]>>;
    chunkSize: z.ZodDefault<z.ZodNumber>;
    allowInterruptions: z.ZodDefault<z.ZodBoolean>;
    preferVisualCues: z.ZodDefault<z.ZodBoolean>;
}, "strip", z.ZodTypeAny, {
    readingSpeed: "slow" | "medium" | "fast";
    explanationLevel: "simple" | "detailed" | "expert";
    processingPace: "relaxed" | "standard" | "quick";
    chunkSize: number;
    allowInterruptions: boolean;
    preferVisualCues: boolean;
}, {
    readingSpeed?: "slow" | "medium" | "fast" | undefined;
    explanationLevel?: "simple" | "detailed" | "expert" | undefined;
    processingPace?: "relaxed" | "standard" | "quick" | undefined;
    chunkSize?: number | undefined;
    allowInterruptions?: boolean | undefined;
    preferVisualCues?: boolean | undefined;
}>;
export declare const AIPreferencesSchema: z.ZodObject<{
    tone: z.ZodDefault<z.ZodEnum<["calm-supportive", "neutral", "enthusiastic", "professional"]>>;
    responseLength: z.ZodDefault<z.ZodEnum<["brief", "standard", "detailed"]>>;
    consistencyLevel: z.ZodDefault<z.ZodEnum<["adaptive", "moderate", "high"]>>;
    useAnalogies: z.ZodDefault<z.ZodBoolean>;
    allowUndo: z.ZodDefault<z.ZodBoolean>;
}, "strip", z.ZodTypeAny, {
    tone: "calm-supportive" | "neutral" | "enthusiastic" | "professional";
    responseLength: "detailed" | "standard" | "brief";
    consistencyLevel: "adaptive" | "moderate" | "high";
    useAnalogies: boolean;
    allowUndo: boolean;
}, {
    tone?: "calm-supportive" | "neutral" | "enthusiastic" | "professional" | undefined;
    responseLength?: "detailed" | "standard" | "brief" | undefined;
    consistencyLevel?: "adaptive" | "moderate" | "high" | undefined;
    useAnalogies?: boolean | undefined;
    allowUndo?: boolean | undefined;
}>;
export declare const VRPreferencesSchema: z.ZodObject<{
    comfortRadius: z.ZodDefault<z.ZodNumber>;
    safeSpaceEnabled: z.ZodDefault<z.ZodBoolean>;
    locomotionType: z.ZodDefault<z.ZodEnum<["teleport", "smooth", "comfort"]>>;
    personalSpace: z.ZodDefault<z.ZodNumber>;
    panicButtonEnabled: z.ZodDefault<z.ZodBoolean>;
}, "strip", z.ZodTypeAny, {
    comfortRadius: number;
    safeSpaceEnabled: boolean;
    locomotionType: "teleport" | "smooth" | "comfort";
    personalSpace: number;
    panicButtonEnabled: boolean;
}, {
    comfortRadius?: number | undefined;
    safeSpaceEnabled?: boolean | undefined;
    locomotionType?: "teleport" | "smooth" | "comfort" | undefined;
    personalSpace?: number | undefined;
    panicButtonEnabled?: boolean | undefined;
}>;
export declare const PreferencesSchema: z.ZodObject<{
    schemaVersion: z.ZodDefault<z.ZodString>;
    userId: z.ZodOptional<z.ZodString>;
    profileName: z.ZodOptional<z.ZodString>;
    lastModified: z.ZodOptional<z.ZodString>;
    sensory: z.ZodObject<{
        motionReduction: z.ZodDefault<z.ZodBoolean>;
        highContrast: z.ZodDefault<z.ZodBoolean>;
        colorVisionFilter: z.ZodDefault<z.ZodEnum<["none", "protanopia", "deuteranopia", "tritanopia"]>>;
        fontSize: z.ZodDefault<z.ZodNumber>;
        reducedFlashing: z.ZodDefault<z.ZodBoolean>;
        darkMode: z.ZodDefault<z.ZodBoolean>;
    }, "strip", z.ZodTypeAny, {
        motionReduction: boolean;
        highContrast: boolean;
        colorVisionFilter: "none" | "protanopia" | "deuteranopia" | "tritanopia";
        fontSize: number;
        reducedFlashing: boolean;
        darkMode: boolean;
    }, {
        motionReduction?: boolean | undefined;
        highContrast?: boolean | undefined;
        colorVisionFilter?: "none" | "protanopia" | "deuteranopia" | "tritanopia" | undefined;
        fontSize?: number | undefined;
        reducedFlashing?: boolean | undefined;
        darkMode?: boolean | undefined;
    }>;
    cognitive: z.ZodObject<{
        readingSpeed: z.ZodDefault<z.ZodEnum<["slow", "medium", "fast"]>>;
        explanationLevel: z.ZodDefault<z.ZodEnum<["simple", "detailed", "expert"]>>;
        processingPace: z.ZodDefault<z.ZodEnum<["relaxed", "standard", "quick"]>>;
        chunkSize: z.ZodDefault<z.ZodNumber>;
        allowInterruptions: z.ZodDefault<z.ZodBoolean>;
        preferVisualCues: z.ZodDefault<z.ZodBoolean>;
    }, "strip", z.ZodTypeAny, {
        readingSpeed: "slow" | "medium" | "fast";
        explanationLevel: "simple" | "detailed" | "expert";
        processingPace: "relaxed" | "standard" | "quick";
        chunkSize: number;
        allowInterruptions: boolean;
        preferVisualCues: boolean;
    }, {
        readingSpeed?: "slow" | "medium" | "fast" | undefined;
        explanationLevel?: "simple" | "detailed" | "expert" | undefined;
        processingPace?: "relaxed" | "standard" | "quick" | undefined;
        chunkSize?: number | undefined;
        allowInterruptions?: boolean | undefined;
        preferVisualCues?: boolean | undefined;
    }>;
    ai: z.ZodObject<{
        tone: z.ZodDefault<z.ZodEnum<["calm-supportive", "neutral", "enthusiastic", "professional"]>>;
        responseLength: z.ZodDefault<z.ZodEnum<["brief", "standard", "detailed"]>>;
        consistencyLevel: z.ZodDefault<z.ZodEnum<["adaptive", "moderate", "high"]>>;
        useAnalogies: z.ZodDefault<z.ZodBoolean>;
        allowUndo: z.ZodDefault<z.ZodBoolean>;
    }, "strip", z.ZodTypeAny, {
        tone: "calm-supportive" | "neutral" | "enthusiastic" | "professional";
        responseLength: "detailed" | "standard" | "brief";
        consistencyLevel: "adaptive" | "moderate" | "high";
        useAnalogies: boolean;
        allowUndo: boolean;
    }, {
        tone?: "calm-supportive" | "neutral" | "enthusiastic" | "professional" | undefined;
        responseLength?: "detailed" | "standard" | "brief" | undefined;
        consistencyLevel?: "adaptive" | "moderate" | "high" | undefined;
        useAnalogies?: boolean | undefined;
        allowUndo?: boolean | undefined;
    }>;
    vr: z.ZodObject<{
        comfortRadius: z.ZodDefault<z.ZodNumber>;
        safeSpaceEnabled: z.ZodDefault<z.ZodBoolean>;
        locomotionType: z.ZodDefault<z.ZodEnum<["teleport", "smooth", "comfort"]>>;
        personalSpace: z.ZodDefault<z.ZodNumber>;
        panicButtonEnabled: z.ZodDefault<z.ZodBoolean>;
    }, "strip", z.ZodTypeAny, {
        comfortRadius: number;
        safeSpaceEnabled: boolean;
        locomotionType: "teleport" | "smooth" | "comfort";
        personalSpace: number;
        panicButtonEnabled: boolean;
    }, {
        comfortRadius?: number | undefined;
        safeSpaceEnabled?: boolean | undefined;
        locomotionType?: "teleport" | "smooth" | "comfort" | undefined;
        personalSpace?: number | undefined;
        panicButtonEnabled?: boolean | undefined;
    }>;
    metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
}, "strip", z.ZodTypeAny, {
    schemaVersion: string;
    sensory: {
        motionReduction: boolean;
        highContrast: boolean;
        colorVisionFilter: "none" | "protanopia" | "deuteranopia" | "tritanopia";
        fontSize: number;
        reducedFlashing: boolean;
        darkMode: boolean;
    };
    cognitive: {
        readingSpeed: "slow" | "medium" | "fast";
        explanationLevel: "simple" | "detailed" | "expert";
        processingPace: "relaxed" | "standard" | "quick";
        chunkSize: number;
        allowInterruptions: boolean;
        preferVisualCues: boolean;
    };
    ai: {
        tone: "calm-supportive" | "neutral" | "enthusiastic" | "professional";
        responseLength: "detailed" | "standard" | "brief";
        consistencyLevel: "adaptive" | "moderate" | "high";
        useAnalogies: boolean;
        allowUndo: boolean;
    };
    vr: {
        comfortRadius: number;
        safeSpaceEnabled: boolean;
        locomotionType: "teleport" | "smooth" | "comfort";
        personalSpace: number;
        panicButtonEnabled: boolean;
    };
    userId?: string | undefined;
    profileName?: string | undefined;
    lastModified?: string | undefined;
    metadata?: Record<string, unknown> | undefined;
}, {
    sensory: {
        motionReduction?: boolean | undefined;
        highContrast?: boolean | undefined;
        colorVisionFilter?: "none" | "protanopia" | "deuteranopia" | "tritanopia" | undefined;
        fontSize?: number | undefined;
        reducedFlashing?: boolean | undefined;
        darkMode?: boolean | undefined;
    };
    cognitive: {
        readingSpeed?: "slow" | "medium" | "fast" | undefined;
        explanationLevel?: "simple" | "detailed" | "expert" | undefined;
        processingPace?: "relaxed" | "standard" | "quick" | undefined;
        chunkSize?: number | undefined;
        allowInterruptions?: boolean | undefined;
        preferVisualCues?: boolean | undefined;
    };
    ai: {
        tone?: "calm-supportive" | "neutral" | "enthusiastic" | "professional" | undefined;
        responseLength?: "detailed" | "standard" | "brief" | undefined;
        consistencyLevel?: "adaptive" | "moderate" | "high" | undefined;
        useAnalogies?: boolean | undefined;
        allowUndo?: boolean | undefined;
    };
    vr: {
        comfortRadius?: number | undefined;
        safeSpaceEnabled?: boolean | undefined;
        locomotionType?: "teleport" | "smooth" | "comfort" | undefined;
        personalSpace?: number | undefined;
        panicButtonEnabled?: boolean | undefined;
    };
    schemaVersion?: string | undefined;
    userId?: string | undefined;
    profileName?: string | undefined;
    lastModified?: string | undefined;
    metadata?: Record<string, unknown> | undefined;
}>;
export type SensoryPreferences = z.infer<typeof SensoryPreferencesSchema>;
export type CognitivePreferences = z.infer<typeof CognitivePreferencesSchema>;
export type AIPreferences = z.infer<typeof AIPreferencesSchema>;
export type VRPreferences = z.infer<typeof VRPreferencesSchema>;
export type Preferences = z.infer<typeof PreferencesSchema>;
export declare const PreferencesUpdateSchema: z.ZodObject<Omit<{
    schemaVersion: z.ZodOptional<z.ZodDefault<z.ZodString>>;
    userId: z.ZodOptional<z.ZodOptional<z.ZodString>>;
    profileName: z.ZodOptional<z.ZodOptional<z.ZodString>>;
    lastModified: z.ZodOptional<z.ZodOptional<z.ZodString>>;
    sensory: z.ZodOptional<z.ZodObject<{
        motionReduction: z.ZodDefault<z.ZodBoolean>;
        highContrast: z.ZodDefault<z.ZodBoolean>;
        colorVisionFilter: z.ZodDefault<z.ZodEnum<["none", "protanopia", "deuteranopia", "tritanopia"]>>;
        fontSize: z.ZodDefault<z.ZodNumber>;
        reducedFlashing: z.ZodDefault<z.ZodBoolean>;
        darkMode: z.ZodDefault<z.ZodBoolean>;
    }, "strip", z.ZodTypeAny, {
        motionReduction: boolean;
        highContrast: boolean;
        colorVisionFilter: "none" | "protanopia" | "deuteranopia" | "tritanopia";
        fontSize: number;
        reducedFlashing: boolean;
        darkMode: boolean;
    }, {
        motionReduction?: boolean | undefined;
        highContrast?: boolean | undefined;
        colorVisionFilter?: "none" | "protanopia" | "deuteranopia" | "tritanopia" | undefined;
        fontSize?: number | undefined;
        reducedFlashing?: boolean | undefined;
        darkMode?: boolean | undefined;
    }>>;
    cognitive: z.ZodOptional<z.ZodObject<{
        readingSpeed: z.ZodDefault<z.ZodEnum<["slow", "medium", "fast"]>>;
        explanationLevel: z.ZodDefault<z.ZodEnum<["simple", "detailed", "expert"]>>;
        processingPace: z.ZodDefault<z.ZodEnum<["relaxed", "standard", "quick"]>>;
        chunkSize: z.ZodDefault<z.ZodNumber>;
        allowInterruptions: z.ZodDefault<z.ZodBoolean>;
        preferVisualCues: z.ZodDefault<z.ZodBoolean>;
    }, "strip", z.ZodTypeAny, {
        readingSpeed: "slow" | "medium" | "fast";
        explanationLevel: "simple" | "detailed" | "expert";
        processingPace: "relaxed" | "standard" | "quick";
        chunkSize: number;
        allowInterruptions: boolean;
        preferVisualCues: boolean;
    }, {
        readingSpeed?: "slow" | "medium" | "fast" | undefined;
        explanationLevel?: "simple" | "detailed" | "expert" | undefined;
        processingPace?: "relaxed" | "standard" | "quick" | undefined;
        chunkSize?: number | undefined;
        allowInterruptions?: boolean | undefined;
        preferVisualCues?: boolean | undefined;
    }>>;
    ai: z.ZodOptional<z.ZodObject<{
        tone: z.ZodDefault<z.ZodEnum<["calm-supportive", "neutral", "enthusiastic", "professional"]>>;
        responseLength: z.ZodDefault<z.ZodEnum<["brief", "standard", "detailed"]>>;
        consistencyLevel: z.ZodDefault<z.ZodEnum<["adaptive", "moderate", "high"]>>;
        useAnalogies: z.ZodDefault<z.ZodBoolean>;
        allowUndo: z.ZodDefault<z.ZodBoolean>;
    }, "strip", z.ZodTypeAny, {
        tone: "calm-supportive" | "neutral" | "enthusiastic" | "professional";
        responseLength: "detailed" | "standard" | "brief";
        consistencyLevel: "adaptive" | "moderate" | "high";
        useAnalogies: boolean;
        allowUndo: boolean;
    }, {
        tone?: "calm-supportive" | "neutral" | "enthusiastic" | "professional" | undefined;
        responseLength?: "detailed" | "standard" | "brief" | undefined;
        consistencyLevel?: "adaptive" | "moderate" | "high" | undefined;
        useAnalogies?: boolean | undefined;
        allowUndo?: boolean | undefined;
    }>>;
    vr: z.ZodOptional<z.ZodObject<{
        comfortRadius: z.ZodDefault<z.ZodNumber>;
        safeSpaceEnabled: z.ZodDefault<z.ZodBoolean>;
        locomotionType: z.ZodDefault<z.ZodEnum<["teleport", "smooth", "comfort"]>>;
        personalSpace: z.ZodDefault<z.ZodNumber>;
        panicButtonEnabled: z.ZodDefault<z.ZodBoolean>;
    }, "strip", z.ZodTypeAny, {
        comfortRadius: number;
        safeSpaceEnabled: boolean;
        locomotionType: "teleport" | "smooth" | "comfort";
        personalSpace: number;
        panicButtonEnabled: boolean;
    }, {
        comfortRadius?: number | undefined;
        safeSpaceEnabled?: boolean | undefined;
        locomotionType?: "teleport" | "smooth" | "comfort" | undefined;
        personalSpace?: number | undefined;
        panicButtonEnabled?: boolean | undefined;
    }>>;
    metadata: z.ZodOptional<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
}, "schemaVersion" | "lastModified">, "strip", z.ZodTypeAny, {
    userId?: string | undefined;
    profileName?: string | undefined;
    sensory?: {
        motionReduction: boolean;
        highContrast: boolean;
        colorVisionFilter: "none" | "protanopia" | "deuteranopia" | "tritanopia";
        fontSize: number;
        reducedFlashing: boolean;
        darkMode: boolean;
    } | undefined;
    cognitive?: {
        readingSpeed: "slow" | "medium" | "fast";
        explanationLevel: "simple" | "detailed" | "expert";
        processingPace: "relaxed" | "standard" | "quick";
        chunkSize: number;
        allowInterruptions: boolean;
        preferVisualCues: boolean;
    } | undefined;
    ai?: {
        tone: "calm-supportive" | "neutral" | "enthusiastic" | "professional";
        responseLength: "detailed" | "standard" | "brief";
        consistencyLevel: "adaptive" | "moderate" | "high";
        useAnalogies: boolean;
        allowUndo: boolean;
    } | undefined;
    vr?: {
        comfortRadius: number;
        safeSpaceEnabled: boolean;
        locomotionType: "teleport" | "smooth" | "comfort";
        personalSpace: number;
        panicButtonEnabled: boolean;
    } | undefined;
    metadata?: Record<string, unknown> | undefined;
}, {
    userId?: string | undefined;
    profileName?: string | undefined;
    sensory?: {
        motionReduction?: boolean | undefined;
        highContrast?: boolean | undefined;
        colorVisionFilter?: "none" | "protanopia" | "deuteranopia" | "tritanopia" | undefined;
        fontSize?: number | undefined;
        reducedFlashing?: boolean | undefined;
        darkMode?: boolean | undefined;
    } | undefined;
    cognitive?: {
        readingSpeed?: "slow" | "medium" | "fast" | undefined;
        explanationLevel?: "simple" | "detailed" | "expert" | undefined;
        processingPace?: "relaxed" | "standard" | "quick" | undefined;
        chunkSize?: number | undefined;
        allowInterruptions?: boolean | undefined;
        preferVisualCues?: boolean | undefined;
    } | undefined;
    ai?: {
        tone?: "calm-supportive" | "neutral" | "enthusiastic" | "professional" | undefined;
        responseLength?: "detailed" | "standard" | "brief" | undefined;
        consistencyLevel?: "adaptive" | "moderate" | "high" | undefined;
        useAnalogies?: boolean | undefined;
        allowUndo?: boolean | undefined;
    } | undefined;
    vr?: {
        comfortRadius?: number | undefined;
        safeSpaceEnabled?: boolean | undefined;
        locomotionType?: "teleport" | "smooth" | "comfort" | undefined;
        personalSpace?: number | undefined;
        panicButtonEnabled?: boolean | undefined;
    } | undefined;
    metadata?: Record<string, unknown> | undefined;
}>;
export type PreferencesUpdate = z.infer<typeof PreferencesUpdateSchema>;
export interface ValidationError {
    path: string[];
    message: string;
    code: string;
}
//# sourceMappingURL=schemas.d.ts.map