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 "@pulumi/scaleway";
 * import * as scaleway from "@pulumiverse/scaleway";
 *
 * // Find ips that share the same tags
 * const fipsByTags = scaleway.elasticmetal.getIps({
 *     tags: ["a tag"],
 * });
 * // Find ips that share the same Server ID
 * const myOffer = scaleway.elasticmetal.getOffer({
 *     name: "EM-B112X-SSD",
 * });
 * const base = new scaleway.elasticmetal.Server("base", {
 *     name: "MyServer",
 *     offer: myOffer.then(myOffer => myOffer.offerId),
 *     installConfigAfterward: true,
 * });
 * const first = new scaleway.elasticmetal.Ip("first", {
 *     serverId: base.id,
 *     tags: [
 *         "foo",
 *         "first",
 *     ],
 * });
 * const second = new scaleway.elasticmetal.Ip("second", {
 *     serverId: base.id,
 *     tags: [
 *         "foo",
 *         "second",
 *     ],
 * });
 * const fipsByServerId = scaleway.elasticmetal.getIpsOutput({
 *     serverIds: [base.id],
 * });
 * ```
 */
/** @deprecated scaleway.index/getflexibleips.getFlexibleIps has been deprecated in favor of scaleway.elasticmetal/getips.getIps */
export declare function getFlexibleIps(args?: GetFlexibleIpsArgs, opts?: pulumi.InvokeOptions): Promise<GetFlexibleIpsResult>;
/**
 * 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 "@pulumi/scaleway";
 * import * as scaleway from "@pulumiverse/scaleway";
 *
 * // Find ips that share the same tags
 * const fipsByTags = scaleway.elasticmetal.getIps({
 *     tags: ["a tag"],
 * });
 * // Find ips that share the same Server ID
 * const myOffer = scaleway.elasticmetal.getOffer({
 *     name: "EM-B112X-SSD",
 * });
 * const base = new scaleway.elasticmetal.Server("base", {
 *     name: "MyServer",
 *     offer: myOffer.then(myOffer => myOffer.offerId),
 *     installConfigAfterward: true,
 * });
 * const first = new scaleway.elasticmetal.Ip("first", {
 *     serverId: base.id,
 *     tags: [
 *         "foo",
 *         "first",
 *     ],
 * });
 * const second = new scaleway.elasticmetal.Ip("second", {
 *     serverId: base.id,
 *     tags: [
 *         "foo",
 *         "second",
 *     ],
 * });
 * const fipsByServerId = scaleway.elasticmetal.getIpsOutput({
 *     serverIds: [base.id],
 * });
 * ```
 */
/** @deprecated scaleway.index/getflexibleips.getFlexibleIps has been deprecated in favor of scaleway.elasticmetal/getips.getIps */
export declare function getFlexibleIpsOutput(args?: GetFlexibleIpsOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetFlexibleIpsResult>;
/**
 * 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<string>;
    /**
     * List of server IDs used as filter. IPs with these exact server IDs are listed.
     */
    serverIds?: pulumi.Input<pulumi.Input<string>[]>;
    /**
     * List of tags used as filter. IPs with these exact tags are listed.
     */
    tags?: pulumi.Input<pulumi.Input<string>[]>;
    /**
     * `zone`) The zone in which IPs exist.
     */
    zone?: pulumi.Input<string>;
}
