import { InputTreeNode, KeyValueNode, RefValueNode } from "./core"; import { SchemaStore } from "../schema-store/schema-store"; import { ChacaUtils } from "../utils"; import { DatatypeModule } from "../../modules/datatype"; import { SchemaToResolve } from "../schema-resolver/value-object/schema-input"; import { SchemaCount } from "../schema-resolver/value-object/schema-count"; interface Props { name: string; schemaToResolve: SchemaToResolve; schemasStore: SchemaStore; count: SchemaCount; } export declare class ChacaInputTree { private readonly utils; private readonly datatypeModule; private nodes; private schemasStore; private name; private count; private refToResolve; private readonly nullMapper; private readonly arrayMapper; private readonly resolverValidator; constructor(utils: ChacaUtils, datatypeModule: DatatypeModule, { name, schemaToResolve, schemasStore, count }: Props); getRefNodes(): RefValueNode[]; getFields(): InputTreeNode[]; private createNodeByType; private createSubNodes; insertNode(node: InputTreeNode): void; checkIfFieldExists(fieldTreeRoute: string[]): boolean; searchRefNodes(): void; getPossibleNullNodes(): InputTreeNode[]; getKeyFields(): KeyValueNode[]; } export {};