export interface Ref { readonly kind: "ref"; readonly resourceId: string; readonly output?: string; readonly __type?: T; } export type SecretSource = "env" | "generated"; export interface SecretRef { readonly kind: "secret"; readonly source: SecretSource; readonly key: string; } export interface Readiness { readonly kind: "readiness"; readonly check: "httpOk"; readonly url: string | Ref; readonly timeout?: string; readonly status?: number; } export type Input = T | Ref | (T extends string ? SecretRef : never); export interface RawNode { readonly id: string; readonly type: string; readonly inputs: Readonly>; readonly explicitDependsOn: readonly string[]; readonly readyWhen?: Readiness; } export type SerializedValue = string | number | boolean | { readonly $ref: string; } | { readonly $secret: { readonly source: SecretSource; readonly key: string; }; } | readonly SerializedValue[] | { readonly [key: string]: SerializedValue; }; export interface SerializedReadiness { readonly check: "httpOk"; readonly url: string | { readonly $ref: string; }; readonly timeout?: string; readonly status?: number; } export interface ResourceNode { readonly id: string; readonly type: string; readonly inputs: Readonly>; readonly dependsOn: readonly string[]; readonly readyWhen?: SerializedReadiness; } export interface Move { readonly from: string; readonly to: string; } export interface DesiredStateGraph { readonly version: 1; readonly resources: Readonly>; readonly moved?: readonly Move[]; } //# sourceMappingURL=types.d.ts.map