import { Encoder, Decoder, EncoderDecoder } from "../../core";
import { Response } from "../../client/api/response";
import { BodyConverter } from "../converter/import-adapter";
export declare class ResponseConverterWrapper<T> implements Encoder<T, Uint8Array>, Decoder<Uint8Array, T> {
    protected _converter: EncoderDecoder<T, Response<Uint8Array>>;
    constructor(_converter: EncoderDecoder<T, Response<Uint8Array>>);
    decode(data: Uint8Array): T;
    encode(data: T): Uint8Array;
}
export declare class ResponseConverterUnwrapper<T> implements Encoder<T, Uint8Array>, Decoder<Uint8Array, T> {
    protected _converter: BodyConverter<T>;
    constructor(_converter: BodyConverter<T>);
    decode(data: Uint8Array): T;
    encode(data: T): Uint8Array;
}
export declare class ResponseConverterHelper<T> {
    static wrap<T>(converter: EncoderDecoder<T, Response<Uint8Array>>): ResponseConverterWrapper<T>;
    static unwrap<T>(converter: BodyConverter<T>): ResponseConverterUnwrapper<T>;
}
