import type { CellEvidence } from "../../../playwright/src/cell-runner.js";
import type { MatrixCell } from "../../../schema/src/records/context.js";
export declare const SWEEPS_DETECTOR_VERSION = "1.0.0";
export declare const SWEEPS_RULE_IDS: readonly ["UI-052", "UI-053", "UI-054"];
export type SweepsRuleId = (typeof SWEEPS_RULE_IDS)[number];
export type SweepsFixtureVariant = "positive" | "negative" | "intentional-exception" | "rtl" | "changed-fingerprint";
export type LocaleCheckKind = "text-expansion" | "direction" | "digit-text-spacing" | "date-format" | "number-format" | "currency-format" | "font-fallback" | "bidi-isolation";
export type ResponsiveCheckKind = "breakpoint-boundary" | "safe-area" | "touch-target" | "table-overlay";
export type LocaleSweepCheck = {
    kind: LocaleCheckKind;
    locator: string;
    passed: boolean;
    measurement: Record<string, unknown>;
};
export type ResponsiveSweepCheck = {
    kind: ResponsiveCheckKind;
    locator: string;
    passed: boolean;
    measurement: Record<string, unknown>;
};
export type DimensionObservation = {
    fingerprint: string;
    signals: Record<string, string>;
};
export type SweepsProbe = {
    sweepsVersion: string;
    localeChecks: LocaleSweepCheck[];
    responsiveChecks: ResponsiveSweepCheck[];
    observation: DimensionObservation;
};
export type SweepsArtifactRef = {
    relativePath: string;
    contentHash: string;
    mediaType: string;
    dimensions?: {
        width: number;
        height: number;
    };
};
export type SweepsCellEvidence = CellEvidence & {
    sweepsProbe: SweepsProbe;
    sweepsArtifacts: {
        fullScreenshot: SweepsArtifactRef;
    };
};
export type SweepsMatrixEvidence = {
    matrixId: string;
    cells: SweepsCellEvidence[];
    enabledDimensions: string[];
};
export type SweepsFixturePage = {
    route: string;
    html: string;
    cell?: Partial<MatrixCell>;
};
export type SweepsFixture = {
    fixtureId: string;
    ruleId: SweepsRuleId;
    variant: SweepsFixtureVariant;
    route?: string;
    html?: string;
    pages?: SweepsFixturePage[];
    cell?: Partial<MatrixCell>;
    intentionalContractId?: string;
    enabledDimensions?: string[];
};
export type SweepsViolationFact = {
    ruleId: SweepsRuleId;
    kind: string;
    locator: string;
    measurement: Record<string, unknown>;
    summary: string;
};
export type Ui001EvidenceRecord = {
    ruleId: SweepsRuleId;
    route: string;
    url: string;
    role: string;
    locale: string;
    viewport: MatrixCell["viewport"];
    state: MatrixCell["state"];
    actions: MatrixCell["actions"];
    timestampPhase: string;
    targetLocator: string;
    measuredEvidence: Record<string, unknown>;
    screenshotRefs: string[];
    detectorVersion: string;
    classificationBasis: string;
    violation: SweepsViolationFact;
};
//# sourceMappingURL=types.d.ts.map