import * as pulumi from "@pulumi/pulumi";
import * as outputs from "../types/output";
/**
 * Use this data source to access information about a set of existing Public IP Addresses.
 *
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as azure from "@pulumi/azure";
 *
 * const example = azure.network.getPublicIPs({
 *     resourceGroupName: "pip-test",
 *     attachmentStatus: "Attached",
 * });
 * ```
 *
 * ## API Providers
 *
 * <!-- This section is generated, changes will be overwritten -->
 * This data source uses the following Azure API Providers:
 *
 * * `Microsoft.Network` - 2025-01-01
 */
export declare function getPublicIPs(args: GetPublicIPsArgs, opts?: pulumi.InvokeOptions): Promise<GetPublicIPsResult>;
/**
 * A collection of arguments for invoking getPublicIPs.
 */
export interface GetPublicIPsArgs {
    /**
     * The Allocation Type for the Public IP Address. Possible values include `Static` or `Dynamic`.
     */
    allocationType?: string;
    /**
     * Filter to include IP Addresses which are attached to a device, such as a VM/LB (`Attached`) or unattached (`Unattached`).
     */
    attachmentStatus?: string;
    /**
     * A prefix match used for the IP Addresses `name` field, case sensitive.
     */
    namePrefix?: string;
    /**
     * Specifies the name of the resource group.
     */
    resourceGroupName: string;
}
/**
 * A collection of values returned by getPublicIPs.
 */
export interface GetPublicIPsResult {
    readonly allocationType?: string;
    readonly attachmentStatus?: string;
    /**
     * The provider-assigned unique ID for this managed resource.
     */
    readonly id: string;
    readonly namePrefix?: string;
    /**
     * A List of `publicIps` blocks as defined below filtered by the criteria above.
     */
    readonly publicIps: outputs.network.GetPublicIPsPublicIp[];
    readonly resourceGroupName: string;
}
/**
 * Use this data source to access information about a set of existing Public IP Addresses.
 *
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as azure from "@pulumi/azure";
 *
 * const example = azure.network.getPublicIPs({
 *     resourceGroupName: "pip-test",
 *     attachmentStatus: "Attached",
 * });
 * ```
 *
 * ## API Providers
 *
 * <!-- This section is generated, changes will be overwritten -->
 * This data source uses the following Azure API Providers:
 *
 * * `Microsoft.Network` - 2025-01-01
 */
export declare function getPublicIPsOutput(args: GetPublicIPsOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetPublicIPsResult>;
/**
 * A collection of arguments for invoking getPublicIPs.
 */
export interface GetPublicIPsOutputArgs {
    /**
     * The Allocation Type for the Public IP Address. Possible values include `Static` or `Dynamic`.
     */
    allocationType?: pulumi.Input<string | undefined>;
    /**
     * Filter to include IP Addresses which are attached to a device, such as a VM/LB (`Attached`) or unattached (`Unattached`).
     */
    attachmentStatus?: pulumi.Input<string | undefined>;
    /**
     * A prefix match used for the IP Addresses `name` field, case sensitive.
     */
    namePrefix?: pulumi.Input<string | undefined>;
    /**
     * Specifies the name of the resource group.
     */
    resourceGroupName: pulumi.Input<string>;
}
//# sourceMappingURL=getPublicIPs.d.ts.map