@constructorfleet/ultimate-govee
Version:
Library for interacting with Govee devices written in Typescript.
31 lines • 1.28 kB
TypeScript
import { ClassConstructor } from 'class-transformer';
import { DefaultOption, NameValueOption } from './enum.field';
import { FieldDataType, Field, Parameter } from './field';
import { RangeOptions } from './integer.field';
export declare class ArraySize {
minItems: number;
maxItems: number;
}
export declare class Element<ElementType extends FieldDataType> {
elementType: ElementType;
}
export declare class IntegerElement extends Element<FieldDataType.INTEGER> {
elementRange: RangeOptions;
}
export declare class EnumElement extends Element<FieldDataType.ENUM> {
elementOptions: (RangeOptions | NameValueOption | DefaultOption)[];
}
export declare class ArrayField extends Field<FieldDataType.ARRAY> {
size: ArraySize;
elementFields?: Field<FieldDataType>[];
elementOptions?: (RangeOptions | NameValueOption | DefaultOption)[];
elementRange?: RangeOptions;
}
export declare const StructElement: () => ClassConstructor<Element<FieldDataType.STRUCT>>;
export declare class ArrayParameter extends Parameter<FieldDataType.ARRAY> {
size: ArraySize;
elementFields?: Field<FieldDataType>[];
elementOptions?: (RangeOptions | NameValueOption | DefaultOption)[];
elementRange?: RangeOptions;
}
//# sourceMappingURL=array.field.d.ts.map