import { Buffer } from "node:buffer"; import type { DesignResource } from "./design-resource-handoff-file-primitives.js"; import type { DesignResourceObservableRuleManifestV2, DesignResourceSymbolicHandoffTargetV2, DesignResourceSymbolicNoninterferenceArtifactV2, DesignResourceSymbolicNoninterferenceCertificateV2, DesignResourceSymbolicNoninterferenceFailureWitnessV1, DesignResourceSymbolicNoninterferenceProofV2 } from "./design-resource-symbolic-fact-types.js"; export declare const SYMBOLIC_NONINTERFERENCE_ORACLE_IDENTITY: "ty-context-symbolic-noninterference-oracle"; export declare const SYMBOLIC_NONINTERFERENCE_ORACLE_VERSION: "2.1.0"; export declare const SYMBOLIC_NONINTERFERENCE_ORACLE_IMPLEMENTATION_SHA256: string; export interface SymbolicNoninterferenceArtifactBindingV1 { static_dependency_nodes: DesignResourceSymbolicNoninterferenceProofV2["static_dependency_nodes"]; static_rule_roots: DesignResourceSymbolicNoninterferenceProofV2["static_rule_roots"]; equivalence_cases: DesignResourceSymbolicNoninterferenceProofV2["equivalence_cases"]; complete_domain_cardinality: string | null; oracle_version: string; oracle_implementation_sha256: string; oracle_capability: string; environment_sha256: string; input_snapshot_sha256: string; source_manifest_snapshot_sha256: string | null; target_snapshot_sha256: string; certificate_scope_sha256: string; rule_scope_sha256: string; omitted_axis_refs: string[]; method_result_sha256: string; artifact_resource_ref: string; artifact_path: string; artifact_sha256: string; failure_witness: DesignResourceSymbolicNoninterferenceFailureWitnessV1 | null; } export declare function createSymbolicNoninterferenceArtifactBinding(manifest: DesignResourceObservableRuleManifestV2, certificate: DesignResourceSymbolicNoninterferenceCertificateV2, proof: DesignResourceSymbolicNoninterferenceProofV2, target: DesignResourceSymbolicHandoffTargetV2, resources: ReadonlyMap, contents: ReadonlyMap, artifactResourceRef: string, artifactPath: string): { artifact: DesignResourceSymbolicNoninterferenceArtifactV2; text: string; binding: SymbolicNoninterferenceArtifactBindingV1; }; export declare function validateSymbolicNoninterferenceArtifact(manifest: DesignResourceObservableRuleManifestV2, certificate: DesignResourceSymbolicNoninterferenceCertificateV2, proof: DesignResourceSymbolicNoninterferenceProofV2, target: DesignResourceSymbolicHandoffTargetV2, resources: ReadonlyMap, contents: ReadonlyMap): void;