import { OnDestroy } from '@angular/core';
import { Router } from '@angular/router';
import { AbstractVariable, TapVariable } from '@iotize/tap/data';
import { TapVariableButton } from '../tap-variable-buttons/tap-variable-buttons.component';
import * as i0 from "@angular/core";
type CardType = 'gauge' | 'text' | 'chart' | 'switch' | 'buttons' | 'range' | 'select';
export declare class VariableCardComponent implements OnDestroy {
    router: Router;
    waitForSubmit: boolean;
    cardType: CardType;
    cardTypes: CardType[];
    editMode: boolean;
    monitor: boolean;
    showStartStopMonitoring: boolean;
    unit: string;
    bundleName: string;
    error?: Error;
    value: any;
    refreshValues: boolean;
    monitoringButtons: TapVariableButton[];
    selectOptions: {
        key: number;
        text: string;
    }[];
    _variable?: AbstractVariable<any>;
    private _subscription?;
    set variable(variable: AbstractVariable<any>);
    get variable(): AbstractVariable<any>;
    constructor(router: Router);
    get variableConfig(): TapVariable.Config | undefined;
    switchButtonToggleAction(checked: boolean): Promise<void>;
    ngOnDestroy(): void;
    onCardTypeChange($event: CustomEvent<{
        value: CardType;
    }>): void;
    toggleMonitoring(): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<VariableCardComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<VariableCardComponent, "app-variable-card", never, { "cardType": "cardType"; "cardTypes": "cardTypes"; "editMode": "editMode"; "monitor": "monitor"; "showStartStopMonitoring": "showStartStopMonitoring"; "unit": "unit"; "bundleName": "bundleName"; "variable": "variable"; }, {}, never, never, false, never>;
}
export {};
