import AbstractCartridge from './AbstractCartridge'; import CartridgeInfo from './CartridgeInfo'; import Bus from '../Bus'; import CartridgeInterface from './CartridgeInterface'; import * as cartridgeUtil from './util'; declare class CartridgeDPCPlus extends AbstractCartridge { constructor(buffer: cartridgeUtil.BufferInterface); 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; protected triggerTrap(reason: CartridgeInterface.TrapReason, message: string): void; private _access; private _clockMusicFetchers; private _dispatchFunction; private _advanceRng; private _rewindRng; private _rom; private _banks; private _currentBank; private _ram; private _imageRam; private _fetchers; private _fractionalFetchers; private _musicFetchers; private _parameters; private _parameterIndex; private _rng; private _clockAccumulator; private _lastCpuTime; private _fastFetch; private _ldaPending; private _bus; private _cpuTimeProvider; private _soc; } export { CartridgeDPCPlus as default };