import { BitData } from "./BitData.js"; import { Tape } from "./Tape.js"; import { TapeDecoder } from "./TapeDecoder.js"; import { TapeDecoderState } from "./TapeDecoderState.js"; import { ByteData } from "./ByteData.js"; import { Program } from "./Program.js"; import { WaveformAnnotation } from "./Annotations.js"; /** * Decodes high-speed (1500 baud) cassettes. */ export declare class HighSpeedTapeDecoder implements TapeDecoder { private readonly tape; private readonly lengthMultiplier; private state; private readonly programBytes; private readonly bits; private readonly byteData; constructor(tape: Tape); getName(): string; isHighSpeed(): boolean; findNextProgram(startFrame: number, waveformAnnotations: WaveformAnnotation[]): Program | undefined; /** * Find the next bit, starting at the positive crossing of the end of the previous bit. Returns * the positive crossing at the end of this bit, and the value of the bit. The bit is undefined * if the length was too short or too long. Returns undefined if we ran off the end of the tape. */ private findBit; /** * Find the next positive crossing, starting at startFrame. If none is found, returns undefined. */ private findPositiveCrossing; /** * Read a sequence of bits (the characters "0" and "1"). This is for testing. */ readBits(frame: number): [string, WaveformAnnotation[], string[]]; getState(): TapeDecoderState; getBinary(): Uint8Array; getBitData(): BitData[]; getByteData(): ByteData[]; } //# sourceMappingURL=HighSpeedTapeDecoder.d.ts.map