import * as pulumi from "@pulumi/pulumi";
import * as inputs from "./types/input";
import * as outputs from "./types/output";
/**
 * Retrieves information about the Droplet sizes that DigitalOcean supports, with
 * the ability to filter and sort the results. If no filters are specified, all sizes
 * will be returned.
 */
export declare function getSizes(args?: GetSizesArgs, opts?: pulumi.InvokeOptions): Promise<GetSizesResult>;
/**
 * A collection of arguments for invoking getSizes.
 */
export interface GetSizesArgs {
    /**
     * Filter the results.
     * The `filter` block is documented below.
     */
    filters?: inputs.GetSizesFilter[];
    /**
     * Sort the results.
     * The `sort` block is documented below.
     */
    sorts?: inputs.GetSizesSort[];
}
/**
 * A collection of values returned by getSizes.
 */
export interface GetSizesResult {
    readonly filters?: outputs.GetSizesFilter[];
    /**
     * The provider-assigned unique ID for this managed resource.
     */
    readonly id: string;
    readonly sizes: outputs.GetSizesSize[];
    readonly sorts?: outputs.GetSizesSort[];
}
/**
 * Retrieves information about the Droplet sizes that DigitalOcean supports, with
 * the ability to filter and sort the results. If no filters are specified, all sizes
 * will be returned.
 */
export declare function getSizesOutput(args?: GetSizesOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetSizesResult>;
/**
 * A collection of arguments for invoking getSizes.
 */
export interface GetSizesOutputArgs {
    /**
     * Filter the results.
     * The `filter` block is documented below.
     */
    filters?: pulumi.Input<pulumi.Input<inputs.GetSizesFilterArgs>[]>;
    /**
     * Sort the results.
     * The `sort` block is documented below.
     */
    sorts?: pulumi.Input<pulumi.Input<inputs.GetSizesSortArgs>[]>;
}
