import * as pulumi from "@pulumi/pulumi";
import * as outputs from "../types/output";
/**
 * Gets information about an instance snapshot.
 *
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as scaleway from "@pulumiverse/scaleway";
 *
 * // Get info by snapshot name
 * const byName = scaleway.instance.getSnapshot({
 *     name: "my-snapshot-name",
 * });
 * // Get info by snapshot ID
 * const byId = scaleway.instance.getSnapshot({
 *     snapshotId: "11111111-1111-1111-1111-111111111111",
 * });
 * ```
 */
export declare function getSnapshot(args?: GetSnapshotArgs, opts?: pulumi.InvokeOptions): Promise<GetSnapshotResult>;
/**
 * A collection of arguments for invoking getSnapshot.
 */
export interface GetSnapshotArgs {
    /**
     * The snapshot name.
     * Only one of `name` and `snapshotId` should be specified.
     */
    name?: string;
    /**
     * `projectId`) The ID of the project the snapshot is associated with.
     */
    projectId?: string;
    /**
     * The snapshot id.
     * Only one of `name` and `snapshotId` should be specified.
     */
    snapshotId?: string;
    /**
     * `zone`) The zone in which the snapshot exists.
     */
    zone?: string;
}
/**
 * A collection of values returned by getSnapshot.
 */
export interface GetSnapshotResult {
    readonly createdAt: string;
    /**
     * The provider-assigned unique ID for this managed resource.
     */
    readonly id: string;
    readonly imports: outputs.instance.GetSnapshotImport[];
    readonly name?: string;
    readonly organizationId: string;
    readonly projectId?: string;
    readonly sizeInGb: number;
    readonly snapshotId?: string;
    readonly tags: string[];
    readonly type: string;
    readonly volumeId: string;
    readonly zone?: string;
}
/**
 * Gets information about an instance snapshot.
 *
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as scaleway from "@pulumiverse/scaleway";
 *
 * // Get info by snapshot name
 * const byName = scaleway.instance.getSnapshot({
 *     name: "my-snapshot-name",
 * });
 * // Get info by snapshot ID
 * const byId = scaleway.instance.getSnapshot({
 *     snapshotId: "11111111-1111-1111-1111-111111111111",
 * });
 * ```
 */
export declare function getSnapshotOutput(args?: GetSnapshotOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetSnapshotResult>;
/**
 * A collection of arguments for invoking getSnapshot.
 */
export interface GetSnapshotOutputArgs {
    /**
     * The snapshot name.
     * Only one of `name` and `snapshotId` should be specified.
     */
    name?: pulumi.Input<string | undefined>;
    /**
     * `projectId`) The ID of the project the snapshot is associated with.
     */
    projectId?: pulumi.Input<string | undefined>;
    /**
     * The snapshot id.
     * Only one of `name` and `snapshotId` should be specified.
     */
    snapshotId?: pulumi.Input<string | undefined>;
    /**
     * `zone`) The zone in which the snapshot exists.
     */
    zone?: pulumi.Input<string | undefined>;
}
//# sourceMappingURL=getSnapshot.d.ts.map