import type * as r53r from "@distilled.cloud/aws/route53resolver"; import type * as Effect from "effect/Effect"; import * as Binding from "../../Binding.ts"; import type { ResolverEndpoint } from "./ResolverEndpoint.ts"; export interface ListResolverEndpointIpAddressesRequest extends Omit { } /** * Runtime binding for `route53resolver:ListResolverEndpointIpAddresses` — * discover the IP addresses the bound {@link ResolverEndpoint}'s network * interfaces answer/forward on (one per subnet); the endpoint ID is injected * automatically. * * The canonical runtime use: DNS bootstrap automation that reads an INBOUND * endpoint's IPs to configure on-premises conditional forwarders (or a VPN / * DHCP option set) without hard-coding addresses. * * Provide `Route53Resolver.ListResolverEndpointIpAddressesHttp` on the * hosting Lambda Function to satisfy the requirement. * ### Discovering Endpoint IPs * **Example:** List the Endpoint's IP Addresses * ```typescript * // init — grants route53resolver:ListResolverEndpointIpAddresses on the endpoint * const listIps = yield* AWS.Route53Resolver.ListResolverEndpointIpAddresses(endpoint); * * // runtime * const { IpAddresses } = yield* listIps(); * const ips = (IpAddresses ?? []).map((ip) => ip.Ip); * ``` * * @binding */ export interface ListResolverEndpointIpAddresses extends Binding.Service Effect.Effect<(request?: ListResolverEndpointIpAddressesRequest) => Effect.Effect>> { } export declare const ListResolverEndpointIpAddresses: ListResolverEndpointIpAddresses; //# sourceMappingURL=ListResolverEndpointIpAddresses.d.ts.map