import type { MountResolverResult } from './mount-resolver.js'; interface ContractEntry { protocol: string; role: string; key: string; normalizedKey?: string; details?: string; } /** * Apply mount prefix resolution to contract entries. * * For HTTP contracts: * - Server role: look up filePath in routeMounts, prepend prefix if missing * - Client role: if clientBaseUrl exists, prepend it if missing * - Non-HTTP contracts: pass through unchanged */ export declare function resolveContractKeys(contracts: ContractEntry[], filePath: string, mountResult: MountResolverResult): ContractEntry[]; /** * Common API prefixes to strip during normalization. */ export declare const STRIP_PREFIXES: string[]; /** * Normalize a path by stripping common API version prefixes. * This ensures client and server normalizedKeys align even when one side * uses a base URL prefix and the other doesn't. */ export declare function stripApiPrefix(path: string): string; /** * Post-process resolved contracts: strip common API version prefixes * from normalizedKey so that client and server keys align. * The original key is preserved in the `key` field; only `normalizedKey` is replaced. */ export declare function normalizeContractKeys(contracts: ContractEntry[]): ContractEntry[]; export {}; //# sourceMappingURL=key-resolver.d.ts.map