import { Construct } from 'constructs';
import * as cdktf from 'cdktf';
export interface ProxmoxProviderConfig {
    /**
    * A proxmox api key.
    *
    * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/proxmox#api_key ProxmoxProvider#api_key}
    */
    readonly apiKey?: string;
    /**
    * Proxmox endpoint to connect with. **Ex `https://10.0.0.2:8006`**
    *
    * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/proxmox#endpoint ProxmoxProvider#endpoint}
    */
    readonly endpoint: string;
    /**
    * Skip TLS verification. Defaults to true.
    *
    * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/proxmox#insecure ProxmoxProvider#insecure}
    */
    readonly insecure?: boolean | cdktf.IResolvable;
    /**
    * Password for specified user.
    *
    * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/proxmox#password ProxmoxProvider#password}
    */
    readonly password?: string;
    /**
    * The username to use for authentication.
    *
    * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/proxmox#username ProxmoxProvider#username}
    */
    readonly username?: string;
    /**
    * Alias name
    *
    * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/proxmox#alias ProxmoxProvider#alias}
    */
    readonly alias?: string;
}
/**
* Represents a {@link https://www.terraform.io/docs/providers/proxmox proxmox}
*/
export declare class ProxmoxProvider extends cdktf.TerraformProvider {
    static readonly tfResourceType = "proxmox";
    /**
    * Create a new {@link https://www.terraform.io/docs/providers/proxmox proxmox} 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 ProxmoxProviderConfig
    */
    constructor(scope: Construct, id: string, config: ProxmoxProviderConfig);
    private _apiKey?;
    get apiKey(): string | undefined;
    set apiKey(value: string | undefined);
    resetApiKey(): void;
    get apiKeyInput(): string | undefined;
    private _endpoint?;
    get endpoint(): string | undefined;
    set endpoint(value: string | undefined);
    get endpointInput(): string | undefined;
    private _insecure?;
    get insecure(): boolean | cdktf.IResolvable | undefined;
    set insecure(value: boolean | cdktf.IResolvable | undefined);
    resetInsecure(): void;
    get insecureInput(): boolean | cdktf.IResolvable | undefined;
    private _password?;
    get password(): string | undefined;
    set password(value: string | undefined);
    resetPassword(): void;
    get passwordInput(): string | undefined;
    private _username?;
    get username(): string | undefined;
    set username(value: string | undefined);
    resetUsername(): void;
    get usernameInput(): string | undefined;
    private _alias?;
    get alias(): string | undefined;
    set alias(value: string | undefined);
    resetAlias(): void;
    get aliasInput(): string | undefined;
    protected synthesizeAttributes(): {
        [name: string]: any;
    };
}
