import type { CloneExtraInfo, CloneFilter, CloneOptions, INamespace, UAVariable } from "node-opcua-address-space-base"; import { type Int32, type Int64, type UInt64 } from "node-opcua-basic-types"; import type { DTEnumValue } from "node-opcua-nodeset-ua"; import { type StatusCode } from "node-opcua-status-code"; import { DataType, Variant } from "node-opcua-variant"; import type { AddMultiStateValueDiscreteOptions } from "../../source/address_space_ts"; import type { UAMultiStateValueDiscreteEx } from "../../source/interfaces/data_access/ua_multistate_value_discrete_ex"; import type { ISetStateOptions } from "../../source/interfaces/i_set_state_options"; import { UAVariableImpl } from "../ua_variable_impl"; type Number = number | Int64 | UInt64; export declare class UAMultiStateValueDiscreteImplBase extends UAVariableImpl { private get $6(); setValue(value: string | number | Int64, options?: ISetStateOptions): void; getValueAsString(): string | string[]; getValueAsNumber(): number; checkVariantCompatibility(value: Variant): StatusCode; clone(options1: CloneOptions, optionalFilter?: CloneFilter, extraInfo?: CloneExtraInfo): UAMultiStateValueDiscreteImpl; /** * @private */ _isValueInRange(value: number): boolean; /** * * @private */ _enumValueIndex(): Record; /** * * @private */ _setValue(value: Int64, _options?: ISetStateOptions): void; /** * * @private */ findValueAsText(value?: number | Int64): Variant; _getDataType(): DataType; /** * * @private */ _post_initialize(): void; } export type UAMultiStateValueDiscreteImpl = UAMultiStateValueDiscreteImplBase & UAMultiStateValueDiscreteEx; export declare const UAMultiStateValueDiscreteImpl: new () => UAMultiStateValueDiscreteImpl; export declare function promoteToMultiStateValueDiscrete(node: UAVariable): UAMultiStateValueDiscreteImpl; export declare function _addMultiStateValueDiscrete(namespace: INamespace, options: AddMultiStateValueDiscreteOptions): UAMultiStateValueDiscreteEx; export declare function validateIsNumericDataType(dataTypeValue: unknown): void; /** @deprecated: use validateIsNumericDataType instead */ export declare const validateDataType: typeof validateIsNumericDataType; export {};