import { VGMConverter, ChipInfo } from "./vgm-converter";
import VGMWriteDataCommandBuffer from "./vgm-write-data-buffer";
import { VGMWriteDataCommand, VGMCommand, VGMWriteDataTargetId } from "vgm-parser";
import { OPLVoice } from "ym-voice";
type OPLType = "ym3812" | "y8950" | "ym3526" | "ymf262";
export declare class YM2203ToOPLConverter extends VGMConverter {
    _regs: Uint8Array;
    _buf: VGMWriteDataCommandBuffer;
    _type: OPLType;
    _targetId: VGMWriteDataTargetId;
    _keyStatus: Array<boolean>;
    _toClock: number;
    _ssgAttenuation: number;
    constructor(from: ChipInfo, to: ChipInfo, opts: {
        ssgAttenuation?: number;
    });
    _y(addr: number, data: number, optimize?: boolean): void;
    getInitialCommands(): Array<VGMCommand>;
    _setVoice(opl_ch: number, v: OPLVoice): void;
    _updateVoice(ch: number): void;
    _updateKeyBlkFnum(ch: number): void;
    _updateSSGTone(ch: number): void;
    _convertSSG(cmd: VGMWriteDataCommand): Array<VGMCommand>;
    _convertFM(cmd: VGMWriteDataCommand): Array<VGMCommand>;
    convertCommand(cmd: VGMCommand): Array<VGMCommand>;
}
export {};
