import * as pulumi from "@pulumi/pulumi";
/**
 * Provides access to available Google Compute zones in a region for a given project.
 * See more about [regions and zones](https://cloud.google.com/compute/docs/regions-zones/regions-zones) in the upstream docs.
 */
export declare function getZones(args?: GetZonesArgs, opts?: pulumi.InvokeOptions): Promise<GetZonesResult>;
/**
 * A collection of arguments for invoking getZones.
 */
export interface GetZonesArgs {
    /**
     * Project from which to list available zones. Defaults to project declared in the provider.
     */
    project?: string;
    /**
     * Region from which to list available zones. Defaults to region declared in the provider.
     */
    region?: string;
    /**
     * Allows to filter list of zones based on their current status. Status can be either `UP` or `DOWN`.
     * Defaults to no filtering (all available zones - both `UP` and `DOWN`).
     */
    status?: string;
}
/**
 * A collection of values returned by getZones.
 */
export interface GetZonesResult {
    /**
     * The provider-assigned unique ID for this managed resource.
     */
    readonly id: string;
    /**
     * A list of zones available in the given region
     */
    readonly names: string[];
    readonly project: string;
    readonly region?: string;
    readonly status?: string;
}
/**
 * Provides access to available Google Compute zones in a region for a given project.
 * See more about [regions and zones](https://cloud.google.com/compute/docs/regions-zones/regions-zones) in the upstream docs.
 */
export declare function getZonesOutput(args?: GetZonesOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetZonesResult>;
/**
 * A collection of arguments for invoking getZones.
 */
export interface GetZonesOutputArgs {
    /**
     * Project from which to list available zones. Defaults to project declared in the provider.
     */
    project?: pulumi.Input<string>;
    /**
     * Region from which to list available zones. Defaults to region declared in the provider.
     */
    region?: pulumi.Input<string>;
    /**
     * Allows to filter list of zones based on their current status. Status can be either `UP` or `DOWN`.
     * Defaults to no filtering (all available zones - both `UP` and `DOWN`).
     */
    status?: pulumi.Input<string>;
}
