UNPKG

@corvina/device-client

Version:
223 lines 7.56 kB
export type StateTS = number; export declare const INVALID_STATE_TS: number; export declare enum Quality { GOOD = 0, UNCERTAIN = 1, BAD = 2 } export declare class State { value: any; timestamp: StateTS; constructor(value?: any, timestamp?: StateTS); get quality(): Quality; clone(): State; } export declare abstract class MessagePublisherPolicy { protected _nextTime: StateTS; constructor(); abstract updateState({ tagName, newState, currentTime, }: { tagName: string; newState: State; currentTime: StateTS; }): StateTS; get nextTime(): number; rearm(currentTime: StateTS): StateTS; referencedTags(): string[]; setDefaultTagName(tagName: string): void; setFieldTagName({ fieldName, tagName }: { fieldName: string; tagName: string; }): void; multiTagVersion(tags: string[]): any; clone(): any; } export declare abstract class MessagePublisher_OperatorPolicy extends MessagePublisherPolicy { constructor(operands?: MessagePublisherPolicy[]); addOperand(op: MessagePublisherPolicy): void; operand(i: number): MessagePublisherPolicy; referencedTags(): string[]; setDefaultTagName(tagName: string): void; setFieldTagName({ fieldName, tagName }: { fieldName: string; tagName: string; }): void; updateState({ tagName, newState, currentTime, }: { tagName: string; newState: State; currentTime: StateTS; }): StateTS; multiTagVersion(tags: string[]): MessagePublisher_OperatorPolicy; protected clear(): void; abstract operatorKeyword(): string; toString(): string; protected _operands: MessagePublisherPolicy[]; clone(): MessagePublisher_OperatorPolicy; } export declare class MessagePublisher_AndPolicy extends MessagePublisher_OperatorPolicy { constructor(operands?: MessagePublisherPolicy[]); updateState({ tagName, newState, currentTime, }: { tagName: string; newState: State; currentTime: StateTS; }): StateTS; rearm(currentTime: StateTS): StateTS; operatorKeyword(): string; } export declare class MessagePublisher_OrPolicy extends MessagePublisher_OperatorPolicy { constructor(operands?: MessagePublisherPolicy[]); updateState({ tagName, newState, currentTime, }: { tagName: string; newState: State; currentTime: StateTS; }): StateTS; rearm(currentTime: StateTS): StateTS; operatorKeyword(): string; } declare abstract class MessagePublisher_TagBasedPolicy extends MessagePublisherPolicy { constructor(tagName?: string); get tagName(): string; setDefaultTagName(tagName: string): void; referencedTags(): string[]; multiTagVersion(tags: string[]): any; abstract defaultMultitagOperator(): MessagePublisher_OperatorPolicy; toString(): string; protected _tagName: string; } export declare class MessagePublisher_QualityPolicy extends MessagePublisher_TagBasedPolicy { protected _expectGood: boolean; constructor({ tagName, expectGood }: { tagName: string; expectGood: boolean; }); updateState({ tagName, newState, currentTime, }: { tagName: string; newState: State; currentTime: StateTS; }): StateTS; toString(): string; defaultMultitagOperator(): MessagePublisher_AndPolicy | MessagePublisher_OrPolicy; } export declare enum ChangeMask { ValueChange = 1, QualityChange = 2, SourceTimestampChange = 4, AnyChange = 5 } export declare class MessagePublisher_OnChangedPolicy extends MessagePublisher_TagBasedPolicy { constructor({ tagName, changeMask, skipFirstNChanges, deadband, isPercent, }: { tagName?: string; changeMask?: ChangeMask; skipFirstNChanges?: number; deadband?: number; isPercent?: boolean; }); updateState({ tagName, newState, currentTime, }: { tagName: string; newState: State; currentTime: StateTS; }): StateTS; toString(): string; defaultMultitagOperator(): MessagePublisher_OrPolicy; protected isOutOfDeadband(v1: any, v2: any): boolean; protected _lastState: State; protected _changeMask: ChangeMask; protected _skipFirstNChanges: number; protected _deadband: number; protected _isPercent: boolean; clone(): any; } export declare class MessagePublisher_TimerPolicy extends MessagePublisherPolicy { constructor(interval?: number); updateState({ tagName, newState, currentTime, }: { tagName: string; newState: State; currentTime: StateTS; }): StateTS; rearm(currentTime: StateTS): StateTS; toString(): string; protected _interval: number; } export declare class MessagePublisher_AnalogBandPolicy extends MessagePublisher_TagBasedPolicy { protected _min: number; protected _max: number; protected _inside: boolean; constructor({ tagName, min, max, inside }: { tagName?: string; min?: number; max?: number; inside?: boolean; }); updateState({ tagName, newState, currentTime, }: { tagName: string; newState: State; currentTime: StateTS; }): StateTS; toString(): string; defaultMultitagOperator(): MessagePublisher_AndPolicy; protected isInBand(v: any): boolean; } export declare class MessagePublisher_OnFieldChangedPolicy extends MessagePublisher_OnChangedPolicy { protected _fieldName: string; constructor({ fieldName, changeMask, skipFirstNChanges, deadband, isPercent, }: { fieldName: string; changeMask?: ChangeMask; skipFirstNChanges?: number; deadband?: number; isPercent?: boolean; }); setTagName(tagName: string): void; get fieldName(): string; setFieldTagName({ fieldName, tagName }: { fieldName: string; tagName: string; }): void; } export declare enum LevelMode { OnEnter = 1, OnExit = 2, OnEnterExit = 3 } export declare class MessagePublisher_OnLevelPolicy<LevelType> extends MessagePublisher_TagBasedPolicy { protected _lastState: State; protected _skipFirstNChanges: number; protected _min: number; protected _max: number; protected _level: LevelType; protected _mode: LevelMode; constructor({ tagName, level, levelMode, skipFirstNChanges, deadband, isPercent, }: { tagName?: string; level?: LevelType; levelMode?: LevelMode; skipFirstNChanges?: number; deadband?: number; isPercent?: boolean; }); toString(): string; defaultMultitagOperator(): MessagePublisher_OrPolicy; updateState({ tagName, newState, currentTime, }: { tagName: string; newState: State; currentTime: StateTS; }): StateTS; protected isInBand(v: LevelType): boolean; clone(): any; } export declare class MessagePublisher_OnFieldLevelPolicy<LevelType> extends MessagePublisher_OnLevelPolicy<LevelType> { protected _fieldName: string; constructor({ fieldName, level, levelMode, skipFirstNChanges, deadband, isPercent, }: { fieldName?: string; level?: LevelType; levelMode?: LevelMode; skipFirstNChanges?: number; deadband?: number; isPercent?: boolean; }); setTagName(tagName: string): void; get fieldName(): string; setFieldTagName({ fieldName, tagName }: { fieldName: string; tagName: string; }): void; } export {}; //# sourceMappingURL=messagepublisherpolicies.d.ts.map