import { Construct } from 'constructs';
import * as cdktf from 'cdktf';
export interface LvmThinpoolConfig extends cdktf.TerraformMetaArguments {
    /**
    * The device to create the LVM thinpool on.
    *
    * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/proxmox/r/lvm_thinpool#device LvmThinpool#device}
    */
    readonly device: string;
    /**
    * The name of the LVM thinpool.
    *
    * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/proxmox/r/lvm_thinpool#name LvmThinpool#name}
    */
    readonly name: string;
    /**
    * The node the LVM thinpool is on.
    *
    * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/proxmox/r/lvm_thinpool#node LvmThinpool#node}
    */
    readonly nodeAttribute: string;
}
/**
* Represents a {@link https://www.terraform.io/docs/providers/proxmox/r/lvm_thinpool proxmox_lvm_thinpool}
*/
export declare class LvmThinpool extends cdktf.TerraformResource {
    static readonly tfResourceType = "proxmox_lvm_thinpool";
    /**
    * Create a new {@link https://www.terraform.io/docs/providers/proxmox/r/lvm_thinpool proxmox_lvm_thinpool} Resource
    *
    * @param scope The scope in which to define this construct
    * @param id The scoped construct ID. Must be unique amongst siblings in the same scope
    * @param options LvmThinpoolConfig
    */
    constructor(scope: Construct, id: string, config: LvmThinpoolConfig);
    private _device?;
    get device(): string;
    set device(value: string);
    get deviceInput(): string | undefined;
    get id(): string;
    get metadataSize(): number;
    private _name?;
    get name(): string;
    set name(value: string);
    get nameInput(): string | undefined;
    private _node?;
    get nodeAttribute(): string;
    set nodeAttribute(value: string);
    get nodeAttributeInput(): string | undefined;
    get size(): number;
    get volumeGroup(): string;
    protected synthesizeAttributes(): {
        [name: string]: any;
    };
}
