export type PartialValidationSeverity = 'critical' | 'structural' | 'warning';
export type LayoutElementCategory = 'document-root' | 'semantic-landmark' | 'sectioning' | 'metadata' | 'script-style';
export interface PartialValidationIssue {
    severity: PartialValidationSeverity;
    category: LayoutElementCategory;
    element: string;
    message: string;
    suggestion: string;
    targetSelector?: string;
    count: number;
}
export interface PartialValidationResult {
    valid: boolean;
    issues: PartialValidationIssue[];
    bySeverity: {
        critical: PartialValidationIssue[];
        structural: PartialValidationIssue[];
        warning: PartialValidationIssue[];
    };
    totalIssues: number;
    shouldProceed: true;
}
export interface PartialValidationConfig {
    enabled: boolean;
    showWarnings: boolean;
    strictness: 'relaxed' | 'standard' | 'strict';
    additionalCriticalElements?: string[];
    additionalStructuralElements?: string[];
    ignoredElements?: string[];
    ignoredTargets?: string[];
    customValidator?: (html: string, target: string) => PartialValidationIssue[];
}
export interface TargetValidationOverride {
    target: string;
    config: Partial<PartialValidationConfig>;
}
export interface GlobalPartialValidationConfig extends PartialValidationConfig {
    targetOverrides?: TargetValidationOverride[];
}
export interface LayoutElementDefinition {
    category: LayoutElementCategory;
    message: string;
    suggestion?: string;
}
export type LayoutElementMap = Record<string, LayoutElementDefinition>;
export type ValidatedPartialContent = string & {
    readonly __brand: 'ValidatedPartialContent';
};
export declare function isValidatedContent(content: string): content is ValidatedPartialContent;
//# sourceMappingURL=partial-validation-types.d.ts.map