export declare const MAX_ENVIRONMENT_LIST_RESPONSE_BYTES: number; export interface ProductionEnvironmentScope { apiBaseUrl: string; projectSlug: string; projectId?: string; token: string; } export interface NamedProjectEnvironmentScope extends ProductionEnvironmentScope { environmentName: string; expectedEnvironmentId?: string; } export interface ReleaseBoundNamedProjectEnvironmentScope extends NamedProjectEnvironmentScope { expectedReleaseId: string; } /** Resolve and briefly cache canonical named project-environment identities. */ export declare class ProjectEnvironmentIdentityResolver { private readonly options; private readonly cache; constructor(options?: { timeoutMs?: number; maxResponseBytes?: number; }); resolve(input: ProductionEnvironmentScope, signal?: AbortSignal): Promise; /** Resolve one exact named environment and optionally bind its expected ID. */ resolveNamed(input: NamedProjectEnvironmentScope, signal?: AbortSignal): Promise; /** * Resolve a named environment and bind it to its current immutable release. * * Active-release metadata is deliberately fetched on every call: unlike an * environment ID, it is mutable and must not inherit the identity cache TTL. */ resolveNamedForActiveRelease(input: ReleaseBoundNamedProjectEnvironmentScope, signal?: AbortSignal): Promise; private fetchNamedEnvironmentIdentity; private assertExpectedEnvironmentId; clear(): void; } /** Backwards-compatible production-only resolver name. */ export declare class ProductionEnvironmentResolver extends ProjectEnvironmentIdentityResolver { } //# sourceMappingURL=production-environment-resolver.d.ts.map