import * as pulumi from "@pulumi/pulumi";
import * as outputs from "./types/output";
/**
 * Provides details about a Hetzner Storage Box.
 *
 * See the [Storage Boxes API documentation](https://docs.hetzner.cloud/reference/hetzner#storage-boxes) for more details.
 *
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as hcloud from "@pulumi/hcloud";
 *
 * const byId = hcloud.getStorageBox({
 *     id: 1333,
 * });
 * const byName = hcloud.getStorageBox({
 *     name: "backups",
 * });
 * const byLabelSelector = hcloud.getStorageBox({
 *     withSelector: "env=production",
 * });
 * ```
 */
export declare function getStorageBox(args?: GetStorageBoxArgs, opts?: pulumi.InvokeOptions): Promise<GetStorageBoxResult>;
/**
 * A collection of arguments for invoking getStorageBox.
 */
export interface GetStorageBoxArgs {
    /**
     * ID of the Storage Box.
     */
    id?: number;
    /**
     * Name of the Storage Box.
     */
    name?: string;
    /**
     * Filter results using a [Label Selector](https://docs.hetzner.cloud/reference/hetzner#label-selector).
     */
    withSelector?: string;
}
/**
 * A collection of values returned by getStorageBox.
 */
export interface GetStorageBoxResult {
    /**
     * Access settings of the Storage Box.
     */
    readonly accessSettings: outputs.GetStorageBoxAccessSettings;
    /**
     * Whether delete protection is enabled.
     */
    readonly deleteProtection: boolean;
    /**
     * ID of the Storage Box.
     */
    readonly id?: number;
    /**
     * User-defined [labels](https://docs.hetzner.cloud/reference/cloud#labels) (key-value pairs) for the resource.
     */
    readonly labels: {
        [key: string]: string;
    };
    /**
     * Name of the Location.
     */
    readonly location: string;
    /**
     * Name of the Storage Box.
     */
    readonly name?: string;
    /**
     * FQDN of the Storage Box.
     */
    readonly server: string;
    /**
     * Details of the active snapshot plan.
     */
    readonly snapshotPlan: outputs.GetStorageBoxSnapshotPlan;
    /**
     * Name of the Storage Box Type.
     */
    readonly storageBoxType: string;
    /**
     * Host system of the Storage Box.
     */
    readonly system: string;
    /**
     * Primary username of the Storage Box.
     */
    readonly username: string;
    /**
     * Filter results using a [Label Selector](https://docs.hetzner.cloud/reference/hetzner#label-selector).
     */
    readonly withSelector?: string;
}
/**
 * Provides details about a Hetzner Storage Box.
 *
 * See the [Storage Boxes API documentation](https://docs.hetzner.cloud/reference/hetzner#storage-boxes) for more details.
 *
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as hcloud from "@pulumi/hcloud";
 *
 * const byId = hcloud.getStorageBox({
 *     id: 1333,
 * });
 * const byName = hcloud.getStorageBox({
 *     name: "backups",
 * });
 * const byLabelSelector = hcloud.getStorageBox({
 *     withSelector: "env=production",
 * });
 * ```
 */
export declare function getStorageBoxOutput(args?: GetStorageBoxOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetStorageBoxResult>;
/**
 * A collection of arguments for invoking getStorageBox.
 */
export interface GetStorageBoxOutputArgs {
    /**
     * ID of the Storage Box.
     */
    id?: pulumi.Input<number | undefined>;
    /**
     * Name of the Storage Box.
     */
    name?: pulumi.Input<string | undefined>;
    /**
     * Filter results using a [Label Selector](https://docs.hetzner.cloud/reference/hetzner#label-selector).
     */
    withSelector?: pulumi.Input<string | undefined>;
}
//# sourceMappingURL=getStorageBox.d.ts.map