import * as pulumi from "@pulumi/pulumi"; import * as outputs from "./types/output"; /** * Gets information about multiple Flexible IPs. * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as scaleway from "@ediri/scaleway"; * import * as scaleway from "@pulumi/scaleway"; * * const fipsByTags = scaleway.getFlexibleIps({ * tags: ["a tag"], * }); * const myOffer = scaleway.getBaremetalOffer({ * name: "EM-B112X-SSD", * }); * const base = new scaleway.BaremetalServer("base", { * offer: myOffer.then(myOffer => myOffer.offerId), * installConfigAfterward: true, * }); * const first = new scaleway.FlexibleIp("first", { * serverId: base.id, * tags: [ * "foo", * "first", * ], * }); * const second = new scaleway.FlexibleIp("second", { * serverId: base.id, * tags: [ * "foo", * "second", * ], * }); * const fipsByServerId = scaleway.getFlexibleIpsOutput({ * serverIds: [base.id], * }); * ``` */ export declare function getFlexibleIps(args?: GetFlexibleIpsArgs, opts?: pulumi.InvokeOptions): Promise; /** * A collection of arguments for invoking getFlexibleIps. */ export interface GetFlexibleIpsArgs { /** * (Defaults to provider `projectId`) The ID of the project the IP is in. */ projectId?: string; /** * List of server IDs used as filter. IPs with these exact server IDs are listed. */ serverIds?: string[]; /** * List of tags used as filter. IPs with these exact tags are listed. */ tags?: string[]; /** * `zone`) The zone in which IPs exist. */ zone?: string; } /** * A collection of values returned by getFlexibleIps. */ export interface GetFlexibleIpsResult { /** * The provider-assigned unique ID for this managed resource. */ readonly id: string; /** * List of found flexible IPS */ readonly ips: outputs.GetFlexibleIpsIp[]; /** * (Defaults to provider `organizationId`) The ID of the organization the IP is in. */ readonly organizationId: string; /** * (Defaults to provider `projectId`) The ID of the project the IP is in. */ readonly projectId: string; readonly serverIds?: string[]; /** * The list of tags which are attached to the flexible IP. */ readonly tags?: string[]; /** * (Defaults to provider `zone`) The zone in which the MAC address exist. */ readonly zone: string; } /** * Gets information about multiple Flexible IPs. * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as scaleway from "@ediri/scaleway"; * import * as scaleway from "@pulumi/scaleway"; * * const fipsByTags = scaleway.getFlexibleIps({ * tags: ["a tag"], * }); * const myOffer = scaleway.getBaremetalOffer({ * name: "EM-B112X-SSD", * }); * const base = new scaleway.BaremetalServer("base", { * offer: myOffer.then(myOffer => myOffer.offerId), * installConfigAfterward: true, * }); * const first = new scaleway.FlexibleIp("first", { * serverId: base.id, * tags: [ * "foo", * "first", * ], * }); * const second = new scaleway.FlexibleIp("second", { * serverId: base.id, * tags: [ * "foo", * "second", * ], * }); * const fipsByServerId = scaleway.getFlexibleIpsOutput({ * serverIds: [base.id], * }); * ``` */ export declare function getFlexibleIpsOutput(args?: GetFlexibleIpsOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output; /** * A collection of arguments for invoking getFlexibleIps. */ export interface GetFlexibleIpsOutputArgs { /** * (Defaults to provider `projectId`) The ID of the project the IP is in. */ projectId?: pulumi.Input; /** * List of server IDs used as filter. IPs with these exact server IDs are listed. */ serverIds?: pulumi.Input[]>; /** * List of tags used as filter. IPs with these exact tags are listed. */ tags?: pulumi.Input[]>; /** * `zone`) The zone in which IPs exist. */ zone?: pulumi.Input; }