import { Class } from "./types";
import { Converter } from './converter';
export interface PrimitiveNode {
    kind: "Primitive";
    type: Class;
    converter: Converter;
}
export interface ObjectNode {
    kind: "Object";
    type: Class;
    properties: Map<string, SuperNode>;
}
export interface ArrayNode {
    kind: "Array";
    type: Class;
    element: SuperNode;
}
export declare type SuperNode = PrimitiveNode | ObjectNode | ArrayNode;
declare function transform(type: Class | Class[]): SuperNode;
export { transform };
