import { Command as $Command } from "@smithy/smithy-client"; import type { MetadataBearer as __MetadataBearer } from "@smithy/types"; import type { EC2ClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../EC2Client"; import type { CreateIpamPrefixListResolverRequest, CreateIpamPrefixListResolverResult } from "../models/models_1"; /** * @public */ export type { __MetadataBearer }; export { $Command }; /** * @public * * The input for {@link CreateIpamPrefixListResolverCommand}. */ export interface CreateIpamPrefixListResolverCommandInput extends CreateIpamPrefixListResolverRequest { } /** * @public * * The output of {@link CreateIpamPrefixListResolverCommand}. */ export interface CreateIpamPrefixListResolverCommandOutput extends CreateIpamPrefixListResolverResult, __MetadataBearer { } declare const CreateIpamPrefixListResolverCommand_base: { new (input: CreateIpamPrefixListResolverCommandInput): import("@smithy/smithy-client").CommandImpl; new (input: CreateIpamPrefixListResolverCommandInput): import("@smithy/smithy-client").CommandImpl; getEndpointParameterInstructions(): import("@smithy/middleware-endpoint").EndpointParameterInstructions; }; /** *

Creates an IPAM prefix list resolver.

*

An IPAM prefix list resolver is a component that manages the synchronization between IPAM's CIDR selection rules and customer-managed prefix lists. It automates connectivity configurations by selecting CIDRs from IPAM's database based on your business logic and synchronizing them with prefix lists used in resources such as VPC route tables and security groups.

*

For more information about IPAM prefix list resolver, see Automate prefix list updates with IPAM in the Amazon VPC IPAM User Guide.

* @example * Use a bare-bones client and the command you need to make an API call. * ```javascript * import { EC2Client, CreateIpamPrefixListResolverCommand } from "@aws-sdk/client-ec2"; // ES Modules import * // const { EC2Client, CreateIpamPrefixListResolverCommand } = require("@aws-sdk/client-ec2"); // CommonJS import * // import type { EC2ClientConfig } from "@aws-sdk/client-ec2"; * const config = {}; // type is EC2ClientConfig * const client = new EC2Client(config); * const input = { // CreateIpamPrefixListResolverRequest * DryRun: true || false, * IpamId: "STRING_VALUE", // required * Description: "STRING_VALUE", * AddressFamily: "ipv4" || "ipv6", // required * Rules: [ // IpamPrefixListResolverRuleRequestSet * { // IpamPrefixListResolverRuleRequest * RuleType: "static-cidr" || "ipam-resource-cidr" || "ipam-pool-cidr", // required * StaticCidr: "STRING_VALUE", * IpamScopeId: "STRING_VALUE", * ResourceType: "vpc" || "subnet" || "eip" || "public-ipv4-pool" || "ipv6-pool" || "eni" || "anycast-ip-list", * Conditions: [ // IpamPrefixListResolverRuleConditionRequestSet * { // IpamPrefixListResolverRuleConditionRequest * Operation: "equals" || "not-equals" || "subnet-of", // required * IpamPoolId: "STRING_VALUE", * ResourceId: "STRING_VALUE", * ResourceOwner: "STRING_VALUE", * ResourceRegion: "STRING_VALUE", * ResourceTag: { // RequestIpamResourceTag * Key: "STRING_VALUE", * Value: "STRING_VALUE", * }, * Cidr: "STRING_VALUE", * }, * ], * }, * ], * TagSpecifications: [ // TagSpecificationList * { // TagSpecification * ResourceType: "capacity-reservation" || "client-vpn-endpoint" || "customer-gateway" || "carrier-gateway" || "coip-pool" || "declarative-policies-report" || "dedicated-host" || "dhcp-options" || "egress-only-internet-gateway" || "elastic-ip" || "elastic-gpu" || "export-image-task" || "export-instance-task" || "fleet" || "fpga-image" || "host-reservation" || "image" || "image-usage-report" || "import-image-task" || "import-snapshot-task" || "instance" || "instance-event-window" || "internet-gateway" || "ipam" || "ipam-pool" || "ipam-scope" || "ipv4pool-ec2" || "ipv6pool-ec2" || "key-pair" || "launch-template" || "local-gateway" || "local-gateway-route-table" || "local-gateway-virtual-interface" || "local-gateway-virtual-interface-group" || "local-gateway-route-table-vpc-association" || "local-gateway-route-table-virtual-interface-group-association" || "natgateway" || "network-acl" || "network-interface" || "network-insights-analysis" || "network-insights-path" || "network-insights-access-scope" || "network-insights-access-scope-analysis" || "outpost-lag" || "placement-group" || "prefix-list" || "replace-root-volume-task" || "reserved-instances" || "route-table" || "security-group" || "security-group-rule" || "service-link-virtual-interface" || "snapshot" || "spot-fleet-request" || "spot-instances-request" || "subnet" || "subnet-cidr-reservation" || "traffic-mirror-filter" || "traffic-mirror-session" || "traffic-mirror-target" || "transit-gateway" || "transit-gateway-attachment" || "transit-gateway-connect-peer" || "transit-gateway-multicast-domain" || "transit-gateway-policy-table" || "transit-gateway-metering-policy" || "transit-gateway-route-table" || "transit-gateway-route-table-announcement" || "volume" || "vpc" || "vpc-endpoint" || "vpc-endpoint-connection" || "vpc-endpoint-service" || "vpc-endpoint-service-permission" || "vpc-peering-connection" || "vpn-connection" || "vpn-gateway" || "vpc-flow-log" || "capacity-reservation-fleet" || "traffic-mirror-filter-rule" || "vpc-endpoint-connection-device-type" || "verified-access-instance" || "verified-access-group" || "verified-access-endpoint" || "verified-access-policy" || "verified-access-trust-provider" || "vpn-connection-device-type" || "vpc-block-public-access-exclusion" || "vpc-encryption-control" || "route-server" || "route-server-endpoint" || "route-server-peer" || "ipam-resource-discovery" || "ipam-resource-discovery-association" || "instance-connect-endpoint" || "verified-access-endpoint-target" || "ipam-external-resource-verification-token" || "capacity-block" || "mac-modification-task" || "ipam-prefix-list-resolver" || "ipam-policy" || "ipam-prefix-list-resolver-target" || "secondary-interface" || "secondary-network" || "secondary-subnet" || "capacity-manager-data-export" || "vpn-concentrator", * Tags: [ // TagList * { // Tag * Key: "STRING_VALUE", * Value: "STRING_VALUE", * }, * ], * }, * ], * ClientToken: "STRING_VALUE", * }; * const command = new CreateIpamPrefixListResolverCommand(input); * const response = await client.send(command); * // { // CreateIpamPrefixListResolverResult * // IpamPrefixListResolver: { // IpamPrefixListResolver * // OwnerId: "STRING_VALUE", * // IpamPrefixListResolverId: "STRING_VALUE", * // IpamPrefixListResolverArn: "STRING_VALUE", * // IpamArn: "STRING_VALUE", * // IpamRegion: "STRING_VALUE", * // Description: "STRING_VALUE", * // AddressFamily: "ipv4" || "ipv6", * // State: "create-in-progress" || "create-complete" || "create-failed" || "modify-in-progress" || "modify-complete" || "modify-failed" || "delete-in-progress" || "delete-complete" || "delete-failed" || "isolate-in-progress" || "isolate-complete" || "restore-in-progress", * // Tags: [ // TagList * // { // Tag * // Key: "STRING_VALUE", * // Value: "STRING_VALUE", * // }, * // ], * // LastVersionCreationStatus: "pending" || "success" || "failure", * // LastVersionCreationStatusMessage: "STRING_VALUE", * // }, * // }; * * ``` * * @param CreateIpamPrefixListResolverCommandInput - {@link CreateIpamPrefixListResolverCommandInput} * @returns {@link CreateIpamPrefixListResolverCommandOutput} * @see {@link CreateIpamPrefixListResolverCommandInput} for command's `input` shape. * @see {@link CreateIpamPrefixListResolverCommandOutput} for command's `response` shape. * @see {@link EC2ClientResolvedConfig | config} for EC2Client's `config` shape. * * @throws {@link EC2ServiceException} *

Base exception class for all service exceptions from EC2 service.

* * * @public */ export declare class CreateIpamPrefixListResolverCommand extends CreateIpamPrefixListResolverCommand_base { /** @internal type navigation helper, not in runtime. */ protected static __types: { api: { input: CreateIpamPrefixListResolverRequest; output: CreateIpamPrefixListResolverResult; }; sdk: { input: CreateIpamPrefixListResolverCommandInput; output: CreateIpamPrefixListResolverCommandOutput; }; }; }