import { IDeserializer, IVisitor } from './interface';
import { Registry } from '../registry';
export declare function forward(value: any, into: any, registry?: Registry): unknown;
export declare class Forwarder implements IDeserializer {
    private readonly value;
    constructor(value: any);
    deserializeAny<T>(visitor: IVisitor<T>): T;
    deserializeBoolean<T>(visitor: IVisitor<T>): T;
    deserializeNumber<T>(visitor: IVisitor<T>): T;
    deserializeBigInt<T>(visitor: IVisitor<T>): T;
    deserializeString<T>(visitor: IVisitor<T>): T;
    deserializeSymbol<T>(visitor: IVisitor<T>): T;
    deserializeNull<T>(visitor: IVisitor<T>): T;
    deserializeObject<T>(visitor: IVisitor<T>): T;
    deserializeIterable<T>(visitor: IVisitor<T>): T;
    deserializeFunction<T>(_visitor: IVisitor<T>): T;
}