import * as pulumi from "@pulumi/pulumi";
/**
 * ## # huaweicloud.getAvailabilityZones
 *
 * layout: "huaweicloud"
 * page_title: "HuaweiCloud: huaweicloud.getAvailabilityZones"
 * description: ""
 * Use this data source to get a list of availability zones from HuaweiCloud
 *
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as huaweicloud from "@pulumi/huaweicloud";
 *
 * const zones = pulumi.output(huaweicloud.getAvailabilityZones());
 * ```
 */
export declare function getAvailabilityZones(args?: GetAvailabilityZonesArgs, opts?: pulumi.InvokeOptions): Promise<GetAvailabilityZonesResult>;
/**
 * A collection of arguments for invoking getAvailabilityZones.
 */
export interface GetAvailabilityZonesArgs {
    /**
     * The region in which to obtain the available zones. If omitted, the provider-level region
     * will be used.
     */
    region?: string;
    /**
     * The `state` of the availability zones to match, default ("available").
     */
    state?: string;
}
/**
 * A collection of values returned by getAvailabilityZones.
 */
export interface GetAvailabilityZonesResult {
    /**
     * The provider-assigned unique ID for this managed resource.
     */
    readonly id: string;
    /**
     * The names of the availability zones, ordered alphanumerically, that match the queried `state`
     */
    readonly names: string[];
    readonly region: string;
    readonly state?: string;
}
export declare function getAvailabilityZonesOutput(args?: GetAvailabilityZonesOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output<GetAvailabilityZonesResult>;
/**
 * A collection of arguments for invoking getAvailabilityZones.
 */
export interface GetAvailabilityZonesOutputArgs {
    /**
     * The region in which to obtain the available zones. If omitted, the provider-level region
     * will be used.
     */
    region?: pulumi.Input<string>;
    /**
     * The `state` of the availability zones to match, default ("available").
     */
    state?: pulumi.Input<string>;
}
