import CramCodec, { Cursor, Cursors } from './_base.ts';
import { CramFileBlock } from '../file.ts';
import CramSlice from '../slice/index.ts';
import { ExternalCramEncoding } from '../encoding.ts';
export default class ExternalCodec extends CramCodec<'int' | 'byte', ExternalCramEncoding['parameters']> {
    private readonly _decodeData;
    constructor(parameters: ExternalCramEncoding['parameters'], dataType: 'int' | 'byte');
    decode(_slice: CramSlice, _coreDataBlock: CramFileBlock, blocksByContentId: Record<number, CramFileBlock>, cursors: Cursors): number | undefined;
    _decodeInt(contentBlock: CramFileBlock, cursor: Cursor): number;
    _decodeByte(contentBlock: CramFileBlock, cursor: Cursor): number;
}
