import * as pulumi from "@pulumi/pulumi"; import * as inputs from "../types/input"; import * as outputs from "../types/output"; /** * `aws.ec2.getVpcIpamPoolCidrs` provides details about an IPAM pool. * * This resource can prove useful when an ipam pool was shared to your account and you want to know all (or a filtered list) of the CIDRs that are provisioned into the pool. * * ## Example Usage * * Basic usage: * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as aws from "@pulumi/aws"; * * const p = aws.ec2.getVpcIpamPool({ * filters: [ * { * name: "description", * values: ["*mypool*"], * }, * { * name: "address-family", * values: ["ipv4"], * }, * ], * }); * const c = p.then(p => aws.ec2.getVpcIpamPoolCidrs({ * ipamPoolId: p.id, * })); * ``` * * Filtering: * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as aws from "@pulumi/aws"; * * const c = aws.ec2.getVpcIpamPoolCidrs({ * filters: [{ * name: "cidr", * values: ["10.*"], * }], * ipamPoolId: "ipam-pool-123", * }); * const mycidrs = c.then(c => .filter(cidr => cidr.state == "provisioned").map(cidr => (cidr.cidr))); * const pls = new aws.ec2.ManagedPrefixList("pls", { * entries: mycidrs.map(entry => ({ * cidr: entry, * description: entry, * })), * name: `IPAM Pool (${test.id}) Cidrs`, * addressFamily: "IPv4", * maxEntries: mycidrs.length, * }); * ``` */ export declare function getVpcIpamPoolCidrs(args: GetVpcIpamPoolCidrsArgs, opts?: pulumi.InvokeOptions): Promise; /** * A collection of arguments for invoking getVpcIpamPoolCidrs. */ export interface GetVpcIpamPoolCidrsArgs { /** * Custom filter block as described below. */ filters?: inputs.ec2.GetVpcIpamPoolCidrsFilter[]; /** * ID of the IPAM pool you would like the list of provisioned CIDRs. */ ipamPoolId: string; /** * Region where this resource will be [managed](https://docs.aws.amazon.com/general/latest/gr/rande.html#regional-endpoints). Defaults to the Region set in the provider configuration. */ region?: string; } /** * A collection of values returned by getVpcIpamPoolCidrs. */ export interface GetVpcIpamPoolCidrsResult { readonly filters?: outputs.ec2.GetVpcIpamPoolCidrsFilter[]; /** * The provider-assigned unique ID for this managed resource. */ readonly id: string; /** * The CIDRs provisioned into the IPAM pool, described below. */ readonly ipamPoolCidrs: outputs.ec2.GetVpcIpamPoolCidrsIpamPoolCidr[]; readonly ipamPoolId: string; readonly region: string; } /** * `aws.ec2.getVpcIpamPoolCidrs` provides details about an IPAM pool. * * This resource can prove useful when an ipam pool was shared to your account and you want to know all (or a filtered list) of the CIDRs that are provisioned into the pool. * * ## Example Usage * * Basic usage: * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as aws from "@pulumi/aws"; * * const p = aws.ec2.getVpcIpamPool({ * filters: [ * { * name: "description", * values: ["*mypool*"], * }, * { * name: "address-family", * values: ["ipv4"], * }, * ], * }); * const c = p.then(p => aws.ec2.getVpcIpamPoolCidrs({ * ipamPoolId: p.id, * })); * ``` * * Filtering: * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as aws from "@pulumi/aws"; * * const c = aws.ec2.getVpcIpamPoolCidrs({ * filters: [{ * name: "cidr", * values: ["10.*"], * }], * ipamPoolId: "ipam-pool-123", * }); * const mycidrs = c.then(c => .filter(cidr => cidr.state == "provisioned").map(cidr => (cidr.cidr))); * const pls = new aws.ec2.ManagedPrefixList("pls", { * entries: mycidrs.map(entry => ({ * cidr: entry, * description: entry, * })), * name: `IPAM Pool (${test.id}) Cidrs`, * addressFamily: "IPv4", * maxEntries: mycidrs.length, * }); * ``` */ export declare function getVpcIpamPoolCidrsOutput(args: GetVpcIpamPoolCidrsOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output; /** * A collection of arguments for invoking getVpcIpamPoolCidrs. */ export interface GetVpcIpamPoolCidrsOutputArgs { /** * Custom filter block as described below. */ filters?: pulumi.Input[] | undefined>; /** * ID of the IPAM pool you would like the list of provisioned CIDRs. */ ipamPoolId: pulumi.Input; /** * Region where this resource will be [managed](https://docs.aws.amazon.com/general/latest/gr/rande.html#regional-endpoints). Defaults to the Region set in the provider configuration. */ region?: pulumi.Input; } //# sourceMappingURL=getVpcIpamPoolCidrs.d.ts.map