import { EasyTuneVariable, EasyTuneVariableTyped } from "./easy_tune_variable_types.js"; export declare class EasyTuneVariables { private readonly _myVariables; add(variable: EasyTuneVariable, overwriteCurrentOne?: boolean): void; remove(variableName: string): void; get(variableName: string): Readonly | null; set(variableName: string, value: Readonly, resetDefaultValue?: boolean, skipValueChangedNotify?: boolean): void; has(variableName: string): boolean; length(): number; isWidgetCurrentVariable(variableName: string): boolean; getEasyTuneVariable(variableName: string): EasyTuneVariableType | null; getEasyTuneVariablesList(): EasyTuneVariable[]; getEasyTuneVariablesNames(): string[]; changeEasyTuneVariableName(oldName: string, newName: string): void; fromJSON(json: string, resetDefaultValue?: boolean, skipValueChangedNotify?: boolean, manualImport?: boolean): void; toJSON(excludeVariablesWithValueAsDefault?: boolean): string; /** * @param id if `undefined` is used as id, it will overwrite the default variable listener */ registerValueChangedEventListener>(variableName: string, id: unknown, callback: (value: ValueType, easyTuneVariable: EasyTuneVariableType) => void): void; /** * @param id if `undefined` is used as id, it will unregister the default variable listener */ unregisterValueChangedEventListener(variableName: string, id?: unknown): void; }