import { TypeofResult } from '@berish/typeof';
import { magicalDictionary } from '../const';
export declare const SYMBOL_SERBER_PEER: unique symbol;
export declare enum PrintTypeEnum {
    printFunction = "pf",
    printClass = "pc",
    printBuffer = "pb",
    printError = "pe"
}
export declare type TypeofResultWithPrint = TypeofResult | keyof typeof PrintTypeEnum;
declare const mainPrintTypeKey = "_t";
declare const customPrintTypeKey = "_pt";
export interface IPrint<T extends PrintTypeEnum> {
    [mainPrintTypeKey]: typeof magicalDictionary.mainKey;
    [customPrintTypeKey]: T;
}
export declare function getType(value: any): TypeofResultWithPrint;
export declare function createPrint<T extends PrintTypeEnum>(type: T): IPrint<T>;
export {};
//# sourceMappingURL=abstract.d.ts.map