import { type AmqCliAdapter, type AmqExitCategory } from "./amq-cli-adapter.js"; export declare const PI_AMQ_BINDING_ENTRY_TYPE: "pi-amq-binding/v1"; export interface BindingProjectionV1 { readonly handle: string; readonly root: string; readonly rootId: string; readonly baseRoot: string; readonly baseRootId: string; readonly session: string; readonly project: string; readonly amqVersion: string; } export interface ExplicitBindingFlags { readonly handle?: string; readonly root?: string; readonly session?: string; /** Phase 1 carries this value but does not invent mode semantics absent from the design. */ readonly mode?: string; } export interface ResolveBindingInput { readonly flags?: ExplicitBindingFlags; readonly environment?: Readonly; readonly persistedBinding?: unknown; } export type BindingSource = "flags" | "environment" | "persisted"; export type DormantReason = "unbound" | "invalid-flags" | "incomplete-environment" | "invalid-environment" | "invalid-persisted-binding" | "authority-mismatch" | "context-mismatch" | "verification-failed" | "invalid-env-output" | "verification-mismatch" | "stale-persisted-binding"; export type BindingResolution = { readonly kind: "bound"; readonly source: BindingSource; readonly binding: BindingProjectionV1; readonly requestedMode?: string; } | { readonly kind: "dormant"; readonly reason: DormantReason; readonly diagnostic: string; readonly action: "/amq bind"; readonly exitCategory?: AmqExitCategory; }; /** Resolves authority without reading AMQ-owned filesystem paths. */ export declare class BindingResolver { #private; constructor(adapter: Pick); resolve(input?: ResolveBindingInput): Promise; } export declare function parseBindingProjectionV1(value: unknown): BindingProjectionV1; //# sourceMappingURL=binding-resolver.d.ts.map