import type { DesignResource } from "./design-resource-handoff-file-primitives.js"; import type { DesignResourceObservableRuleManifestV2, DesignResourceSymbolicNoninterferenceDerivedResultV2, DesignResourceSymbolicNoninterferenceFailureWitnessV1, DesignResourceSymbolicNoninterferenceProofMethodV2 } from "./design-resource-symbolic-fact-types.js"; import type { CompiledSymbolicDenotationV1, SymbolicDenotationPredicate } from "./symbolic-denotation-types.js"; export interface DerivedCurrentSourceNoninterferenceEvidenceV2 { derived_result: DesignResourceSymbolicNoninterferenceDerivedResultV2; failure_witness: DesignResourceSymbolicNoninterferenceFailureWitnessV1 | null; } export interface DerivedSourceCase { index: number; region: { rule_region_sha256: string; predicate: SymbolicDenotationPredicate; }; compiledSource: CompiledSymbolicDenotationV1; compiledRule: CompiledSymbolicDenotationV1; factRuleRefs: string[]; } export declare function derivedSourceResult(method: DesignResourceSymbolicNoninterferenceProofMethodV2, sourceResourceRef: string, cases: DerivedSourceCase[], manifest: DesignResourceObservableRuleManifestV2): DesignResourceSymbolicNoninterferenceDerivedResultV2; export declare function emptyDerivedSourceResult(method: DesignResourceSymbolicNoninterferenceProofMethodV2, sourceResourceRef?: string | null): DesignResourceSymbolicNoninterferenceDerivedResultV2; export declare function sourceCaseWitness({ certificateScopeSha256, resource, source, proofCase, kind, axisRef, assignment, detail, }: { certificateScopeSha256: string; resource: DesignResource; source: string; proofCase: DerivedSourceCase; kind: DesignResourceSymbolicNoninterferenceFailureWitnessV1["kind"]; axisRef?: string | null; assignment?: DesignResourceSymbolicNoninterferenceFailureWitnessV1["assignment"]; detail: string; }): DesignResourceSymbolicNoninterferenceFailureWitnessV1; export declare function sourceNoninterferenceWitness({ certificateScopeSha256, kind, axisRef, factRuleRef, resource, locator, nodeRef, byteOffset, assignment, detail, }: { certificateScopeSha256: string; kind?: DesignResourceSymbolicNoninterferenceFailureWitnessV1["kind"]; axisRef?: string | null; factRuleRef?: string | null; resource?: DesignResource; locator?: string | null; nodeRef?: string | null; byteOffset?: number | null; assignment?: DesignResourceSymbolicNoninterferenceFailureWitnessV1["assignment"]; detail: string; }): DesignResourceSymbolicNoninterferenceFailureWitnessV1; export declare function failedSourceEvidence(derivedResult: DesignResourceSymbolicNoninterferenceDerivedResultV2, failureWitness: DesignResourceSymbolicNoninterferenceFailureWitnessV1): DerivedCurrentSourceNoninterferenceEvidenceV2; export declare function sameStringSet(left: string[], right: string[]): boolean; export declare function sourceOracleErrorText(error: unknown): string;