UNPKG

@pagopa/dx-cli

Version:

A CLI useful to manage DX tools.

41 lines (40 loc) 1.66 kB
import { z } from "zod/v4"; import { CloudAccount, CloudAccountService } from "./cloud-account.js"; import { TerraformBackend } from "./remote-backend.js"; export declare const environmentShort: Record<Environment["name"], string>; export declare const environmentSchema: z.ZodObject<{ cloudAccounts: z.ZodArray<z.ZodObject<{ csp: z.ZodDefault<z.ZodEnum<{ azure: "azure"; }>>; defaultLocation: z.ZodString; displayName: z.ZodString; id: z.ZodString; }, z.core.$strip>>; name: z.ZodEnum<{ dev: "dev"; prod: "prod"; uat: "uat"; }>; prefix: z.ZodString; }, z.core.$strip>; export type Environment = z.infer<typeof environmentSchema>; export type EnvironmentId = Pick<Environment, "name" | "prefix">; export type EnvironmentInitStatus = { initialized: false; issues: EnvironmentInitIssue[]; } | { initialized: true; }; type CloudAccountNotInitializedIssue = { cloudAccount: CloudAccount; type: "CLOUD_ACCOUNT_NOT_INITIALIZED"; }; type EnvironmentInitIssue = CloudAccountNotInitializedIssue | MissingRemoteBackendIssue; type MissingRemoteBackendIssue = { type: "MISSING_REMOTE_BACKEND"; }; export declare function getInitializationStatus(cloudAccountService: CloudAccountService, environment: Environment): Promise<EnvironmentInitStatus>; export declare function getTerraformBackend(cloudAccountService: CloudAccountService, environment: Environment): Promise<TerraformBackend | undefined>; export declare function hasUserPermissionToInitialize(cloudAccountService: CloudAccountService, environment: Environment): Promise<boolean>; export {};