UNPKG

typed-aws

Version:

Helps you write AWS CloudFormation in TypeScript

44 lines (43 loc) 1.6 kB
import { CreationPolicy, DeletionPolicy, DependsOn, Metadata, UpdatePolicy, UpdateReplacePolicy } from './cfn'; import { Resolvable } from './dataTypes'; export { Resolvable }; export declare class CfnResource<TProps extends CfnResourceProps> implements ICfnResource<TProps> { Type: string; Properties?: TProps; DependsOn?: DependsOn; Metadata?: Metadata; CreationPolicy?: CreationPolicy; DeletionPolicy?: DeletionPolicy; UpdatePolicy?: UpdatePolicy; UpdateReplacePolicy?: UpdateReplacePolicy; Condition?: Resolvable<string>; constructor(Type: string, Properties?: TProps); dependsOn(dependencies: DependsOn): this; setDependsOn(dependencies: DependsOn): this; metadata(metadata: { [key: string]: unknown; }): this; setMetadata(metadata: { [key: string]: unknown; }): this; creationPolicy(policy: CreationPolicy): this; deletionPolicy(policy: DeletionPolicy): this; updatePolicy(policy: UpdatePolicy): this; updateReplacePolicy(policy: UpdateReplacePolicy): this; condition(condition: Resolvable<string>): this; with(apply: (resource: CfnResource<TProps>) => void): this; } export interface ICfnResource<TProps extends CfnResourceProps> { Type: string; Properties?: TProps; DependsOn?: DependsOn; Metadata?: Metadata; CreationPolicy?: CreationPolicy; DeletionPolicy?: DeletionPolicy; UpdatePolicy?: UpdatePolicy; UpdateReplacePolicy?: UpdateReplacePolicy; Condition?: Resolvable<string>; } export declare type CfnResourceProps = { [k: string]: unknown; };