import type { AdaptiveRemediationPlatform, AdaptiveRemediationSelection } from "./types.js"; type Observation = boolean | null; export interface AdaptiveEligibilityInput { readonly platform: AdaptiveRemediationPlatform; readonly canonical_validation_expensive: Observation; readonly repeatable_typed_signal: Observation; readonly signal_id: string | null; readonly signal_definition: string | null; readonly patch_reversible: Observation; readonly patch_isolated: Observation; readonly scope_bounded: Observation; readonly security_sensitive: Observation; readonly schema_migration: Observation; readonly release_or_publication: Observation; readonly irreversible_external_operation: Observation; readonly explicit_standard_override: Observation; } export type AdaptiveEligibilityDetailReason = "eligible" | "explicit-standard-override" | "security-sensitive" | "schema-migration" | "release-or-publication" | "irreversible-external-operation" | "canonical-validation-not-expensive" | "canonical-validation-unknown" | "signal-not-repeatable" | "signal-repeatability-unknown" | "signal-undefined" | "patch-not-reversible" | "patch-reversibility-unknown" | "patch-not-isolated" | "patch-isolation-unknown" | "scope-not-bounded" | "scope-bounds-unknown" | "risk-status-unknown"; export type AdaptiveEligibilityRejectionReason = "invalid-input" | "unsupported-platform"; export type AdaptiveEligibilityOutcome = { readonly status: "selected"; readonly selection: AdaptiveRemediationSelection; readonly detail_reason: AdaptiveEligibilityDetailReason; } | { readonly status: "rejected"; readonly selection: null; readonly reason: AdaptiveEligibilityRejectionReason; }; /** * Selects an inert remediation mode from declared eligibility observations only. * It does not probe the platform, construct a runtime contract, or perform remediation. */ export declare function selectAdaptiveRemediation(input: unknown): AdaptiveEligibilityOutcome; export {};