import AbstractCartridge from './AbstractCartridge'; import CartridgeInfo from './CartridgeInfo'; import Bus from '../Bus'; import * as cartridgeUtil from './util'; declare const enum CdfVersion { cdf0 = 0, cdf1 = 1, cdfj = 2, invalid = 3 } declare class CartridgeCDF extends AbstractCartridge { constructor(buffer: cartridgeUtil.BufferInterface); static getVersion(buffer: cartridgeUtil.BufferInterface): CdfVersion; static matchesBuffer(buffer: cartridgeUtil.BufferInterface): boolean; init(): Promise; reset(): void; getType(): CartridgeInfo.CartridgeType; setBus(bus: Bus): this; setCpuTimeProvider(provider: () => number): this; read(address: number): number; peek(address: number): number; write(address: number, value: number): void; private _access; private _clockMusicStreams; private _getDatastreamPointer; private _setDatastreamPointer; private _getDatastreamIncrement; private _datastreamRead; private _datastreamReadWithIncrement; private _datastreamWriteWithIncrement; private _getWaveform; private _handleBxCDF0; private _handleBxCDF1; private _banks; private _currentBank; private _rom; private _ram; private _displayRam; private _musicStreams; private _clockAccumulator; private _lastCpuTime; private _soc; private _fastFetch; private _digitalAudio; private _fastJumpCountdown; private _fastFetchPending; private _jmpOperandAddress; private _ldaOperandAddress; private _datastreamBase; private _datastreamIncrementBase; private _waveformBase; private _jumpstream; private _jumpstreamMask; private _amplitudeStream; private _bus; private _cpuTimeProvider; } export { CartridgeCDF as default };