/** * Environments — CRUD + promote + envType → envId resolution (ADR-080). * * Wire shape sourced from `@sylphx/contract` (ADR-084). */ import type { CreateEnvironmentInput, CreateEnvironmentResult, Environment, EnvironmentLifecycleActionInput, EnvironmentLifecycleActionResult, EnvironmentLogsResult, PromoteResult, UpdateEnvironmentInput } from '@sylphx/contract'; import type { Client } from './client.js'; export interface OrgScopedRequestOptions { readonly orgId?: string; } export type LogType = 'build' | 'runtime'; export interface EnvironmentLogsOptions extends OrgScopedRequestOptions { readonly type?: LogType; readonly deploymentId?: string; readonly since?: string; readonly limit?: number; readonly level?: string; readonly service?: string; } export declare const list: (client: Client, projectId: string, options?: OrgScopedRequestOptions) => Promise; /** * Resolve an environment name ("production" / "alice-demo") → envId for the * given project. Matches on `name` first, then `envType` (legacy enum). * Returns null if not found. */ export declare const resolveId: (client: Client, projectId: string, envType: string, options?: OrgScopedRequestOptions) => Promise; export declare const promote: (client: Client, projectId: string, targetEnvId: string, sourceEnvId: string, options?: OrgScopedRequestOptions) => Promise; export declare const logs: (client: Client, envId: string, options?: EnvironmentLogsOptions) => Promise; export type CreateInput = CreateEnvironmentInput; export type CreateResult = CreateEnvironmentResult; export declare const create: (client: Client, projectId: string, input: CreateInput, options?: OrgScopedRequestOptions) => Promise; export type UpdateInput = UpdateEnvironmentInput; export declare const update: (client: Client, envId: string, input: UpdateInput, options?: OrgScopedRequestOptions) => Promise<{ id: string; name: string; }>; declare const _delete: (client: Client, envId: string, options?: OrgScopedRequestOptions) => Promise; export { _delete as delete }; export type EnvironmentLifecycleInput = EnvironmentLifecycleActionInput; export declare const suspend: (client: Client, envId: string, input?: EnvironmentLifecycleInput, options?: OrgScopedRequestOptions) => Promise; export declare const resume: (client: Client, envId: string, input?: EnvironmentLifecycleInput, options?: OrgScopedRequestOptions) => Promise; /** * Clone an existing environment (env vars, secrets, service list, * resource bindings, feature flag overrides) into a brand-new env. * Phase 4b Matrix-2 gap closure — replaces ad-hoc "duplicate then tweak" * UX flows. */ export declare const clone: (client: Client, sourceEnvId: string, body: { readonly name: string; readonly envType?: string; readonly includeSecrets?: boolean; readonly includeDatabase?: boolean; }, options?: OrgScopedRequestOptions) => Promise; //# sourceMappingURL=environments.d.ts.map