import * as pulumi from "@pulumi/pulumi"; import * as inputs from "../types/input"; import * as outputs from "../types/output"; /** * Generates an ECR lifecycle policy document in JSON format. Can be used with resources such as the `aws.ecr.LifecyclePolicy` resource. * * > For more information about building AWS ECR lifecycle policy documents, see the [AWS ECR Lifecycle Policy Document Guide](https://docs.aws.amazon.com/AmazonECR/latest/userguide/LifecyclePolicies.html). * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as aws from "@pulumi/aws"; * * const example = aws.ecr.getLifecyclePolicyDocument({ * rules: [{ * selection: { * tagStatus: "tagged", * tagPrefixLists: ["prod"], * countType: "imageCountMoreThan", * countNumber: 100, * }, * priority: 1, * description: "This is a test.", * }], * }); * const exampleLifecyclePolicy = new aws.ecr.LifecyclePolicy("example", { * repository: exampleAwsEcrRepository.name, * policy: example.then(example => example.json), * }); * ``` */ export declare function getLifecyclePolicyDocument(args: GetLifecyclePolicyDocumentArgs, opts?: pulumi.InvokeOptions): Promise; /** * A collection of arguments for invoking getLifecyclePolicyDocument. */ export interface GetLifecyclePolicyDocumentArgs { rules: inputs.ecr.GetLifecyclePolicyDocumentRule[]; } /** * A collection of values returned by getLifecyclePolicyDocument. */ export interface GetLifecyclePolicyDocumentResult { /** * The above arguments serialized as a standard JSON policy document. */ readonly json: string; readonly rules: outputs.ecr.GetLifecyclePolicyDocumentRule[]; } /** * Generates an ECR lifecycle policy document in JSON format. Can be used with resources such as the `aws.ecr.LifecyclePolicy` resource. * * > For more information about building AWS ECR lifecycle policy documents, see the [AWS ECR Lifecycle Policy Document Guide](https://docs.aws.amazon.com/AmazonECR/latest/userguide/LifecyclePolicies.html). * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as aws from "@pulumi/aws"; * * const example = aws.ecr.getLifecyclePolicyDocument({ * rules: [{ * selection: { * tagStatus: "tagged", * tagPrefixLists: ["prod"], * countType: "imageCountMoreThan", * countNumber: 100, * }, * priority: 1, * description: "This is a test.", * }], * }); * const exampleLifecyclePolicy = new aws.ecr.LifecyclePolicy("example", { * repository: exampleAwsEcrRepository.name, * policy: example.then(example => example.json), * }); * ``` */ export declare function getLifecyclePolicyDocumentOutput(args: GetLifecyclePolicyDocumentOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output; /** * A collection of arguments for invoking getLifecyclePolicyDocument. */ export interface GetLifecyclePolicyDocumentOutputArgs { rules: pulumi.Input[]>; } //# sourceMappingURL=getLifecyclePolicyDocument.d.ts.map