@neuroequality/neuroadapt-core
Version:
Core sensory, cognitive, and preference management for NeuroAdapt SDK
415 lines (414 loc) • 18.4 kB
TypeScript
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