import { AddressBus } from '../memory/address-bus'; import { CPURegisters } from './cpu-registers'; import { CPUTimer } from './cpu-timer'; export declare class CPU { private registers; private addressBus; private firstCycle; private skipCycles; private cpuCallbacks; private stopped; private halted; private haltBug; private interruptsEnabled; private timer; constructor(addressBus: AddressBus, cpuTimer: CPUTimer); reset(): void; tick(): void; getRegisters(): CPURegisters; private singleTick(); private executeInterrupts(); private executeOpcode(); } export declare enum CPUInterrupt { VBLANK = 0, LCDSTAT = 1, TIMER = 2, SERIAL = 3, JOYPAD = 4, } export declare const CPU_CLOCK_FREQUENCY: number;