declare const RIDDLE_PROOF_PLAYABILITY_VERSION = "riddle-proof.playability.v1";
declare const RIDDLE_PROOF_PLAYABILITY_ASSESSMENT_VERSION = "riddle-proof.playability.assessment.v1";
interface RiddleProofPlayabilityEvidence {
    version?: typeof RIDDLE_PROOF_PLAYABILITY_VERSION | string;
    target?: string;
    input_events?: unknown[];
    state_delta?: Record<string, unknown>;
    pixel_delta?: Record<string, unknown>;
    canvas_delta?: Record<string, unknown>;
    motion_delta?: Record<string, unknown>;
    playfield_delta?: Record<string, unknown>;
    time_delta_ms?: number;
    assertions?: Record<string, unknown>;
    [key: string]: unknown;
}
interface AssessPlayabilityOptions {
    minChangedPercent?: number;
    minChangedPixels?: number;
    minAverageDelta?: number;
    minTimeDeltaMs?: number;
    requireInput?: boolean;
    requireStateChange?: boolean;
    requireMotion?: boolean;
    requireTimeProgression?: boolean;
}
interface RiddleProofPlayabilityAssessment {
    version: typeof RIDDLE_PROOF_PLAYABILITY_ASSESSMENT_VERSION;
    evidence_present: boolean;
    passed: boolean;
    input_observed: boolean;
    state_changed: boolean;
    motion_observed: boolean;
    time_progressed: boolean;
    concerns: string[];
    metrics: Record<string, unknown>;
    thresholds: Required<Pick<AssessPlayabilityOptions, "minChangedPercent" | "minChangedPixels" | "minAverageDelta" | "minTimeDeltaMs">>;
    required: Required<Pick<AssessPlayabilityOptions, "requireInput" | "requireStateChange" | "requireMotion" | "requireTimeProgression">>;
    evidence_keys: string[];
}
declare function isRiddleProofPlayabilityMode(mode: unknown): boolean;
declare function extractPlayabilityEvidence(...sources: unknown[]): RiddleProofPlayabilityEvidence | null;
declare function assessPlayabilityEvidence(evidence: unknown, options?: AssessPlayabilityOptions): RiddleProofPlayabilityAssessment;

export { type AssessPlayabilityOptions, RIDDLE_PROOF_PLAYABILITY_ASSESSMENT_VERSION, RIDDLE_PROOF_PLAYABILITY_VERSION, type RiddleProofPlayabilityAssessment, type RiddleProofPlayabilityEvidence, assessPlayabilityEvidence, extractPlayabilityEvidence, isRiddleProofPlayabilityMode };
