import { CheckAlgorithm, MinMaxRange } from '@shared/model'; export declare enum CheckSequenceSource { Calculated = "Calculated", FromHeader = "FromHeader" } export declare enum ErrorCorrection { Off = "Off", On = "On" } export declare enum FrameMode { Header2BytesPayloadLengthBetween1And8BytesCrc16 = "Header2BytesPayloadLengthBetween1And8BytesCrc16", Header2BytesPayloadLengthFixedAt8BytesCrc16 = "Header2BytesPayloadLengthFixedAt8BytesCrc16", Header3BytesPayloadLengthBetween1And8BytesCrc24 = "Header3BytesPayloadLengthBetween1And8BytesCrc24", Header3BytesPayloadLengthFixedAt8BytesCrc24 = "Header3BytesPayloadLengthFixedAt8BytesCrc24" } export declare enum RxTimeTickState { Listening = "Listening", Stopped = "Stopped" } export declare enum ScramblerMode { Scramble = "Scramble", UnScramble = "UnScramble" } export declare enum SelfReception { Off = "Off", On = "On" } export declare enum TxTimeTickState { Guard = "Guard", Idle = "Idle", Symbol = "Symbol" } export interface FrameInterface { clone(): FrameInterface; getNextRawByte(): number; getPayload(): number[]; getRawBytePosition(): number; getRawBytes(): number[]; isEqualTo(frame: FrameInterface): boolean; isNotEqualTo(frame: FrameInterface): boolean; isValid(): boolean; setPayload(payload: number[]): FrameInterface; setRawBytes(rawBytes: number[]): FrameInterface; } export declare type DataLinkLayerWrapperListenHandlers = { next: (bytes: number[], isErrorCorrected: boolean) => void; complete: () => void; }; export declare type DataLinkLayerWrapperSendHandlers = { next: (progress: number) => void; complete: () => void; }; export declare type FrameConfig = { frameConfigInitializer: FrameConfigInitializer; frameMode: FrameMode; headerFirstByte?: HeaderFirstByte; payloadLength: MinMaxRange; rawBytesLength: MinMaxRange; }; export declare type FrameConfigInitializer = { checkAlgorithm: CheckAlgorithm; guardFactor: number; headerLength: number; payloadLengthBitSize: number; payloadLengthFixed?: number; payloadLengthOffset?: number; }; export declare type FrameConfigInitializerWithoutCheckAlgorithm = Omit; export declare type FrameCounter = { errorCorrectedInvalid?: number; errorCorrectedValid?: number; errorCorrectedValidFake?: number; invalid?: number; valid?: number; validFake?: number; }; export declare type FrameCounterSimple = { errorCorrected: number; nonErrorCorrected: number; }; export declare type FrameHistoryEntry = { frame: FrameInterface; isErrorCorrected: boolean; rawBytePosition: number; }; export declare type FrameModeToFrameConfigInitializerLookUp = { [key in keyof typeof FrameMode]: FrameConfigInitializer; }; export declare type FrameStatic = new (frameConfig: FrameConfig) => FrameInterface; export declare type FrameStubHooks = { isValid: (frame: FrameInterface) => boolean; }; export declare type HeaderFirstByte = { checkSequenceMask: number; payloadLengthBitShift: number; payloadLengthMask: number; }; export declare type RxBytesCollector = { bytes: string; isErrorCorrected?: boolean; receivedAtTime: number; }; export declare type TestCaseFrameCounterWithPayload = { frameCounter: FrameCounter; payload: string; }; export declare type TestCaseFrameIntegrity = { payload: string; expectedRawBytes: string; };