import { type ByteRecorder } from '../ByteRecorder.js'; import { type BufferAccess } from '../../../common/BufferAccess.js'; import { type RecorderInterface } from '../../recorder/RecorderInterface.js'; /** * Encoder for Acorn Electron * * https://beebwiki.mdfs.net/Acorn_cassette_format */ export declare class ElectronEncoder implements ByteRecorder { private readonly recorder; private fBase; private readonly oscillator; constructor(recorder: RecorderInterface); recordPilot(length: number): void; begin(): void; end(): void; recordSilenceMs(lengthMs: number): void; recordCarrier(oscillations: number): void; recordGap(length: number): void; recordBytes(data: BufferAccess): void; recordByte(byte: number, dataBits?: number, parity?: ParitySetting, stopBits?: number): void; recordBit(value: number): void; setBaseFrequency(f: number): void; } export type ParitySetting = 'N' | 'E' | 'O';