import { QueryReply, Status, ResultAlias, EntityTable, Path, Table, Value, Schema, Property, ExplainPlan, Attr } from "../proto/ultipa_pb";
import * as ULTIPA from "../types/types";
import { Alias } from "../types/types";
export declare const mergeQueryResponse: (res1: ULTIPA.Response, res2: ULTIPA.Response) => ULTIPA.Response;
export declare const FormatType: {
    queryResponse: (res: QueryReply, timezone: ULTIPA.Ttimezone) => ULTIPA.Response;
    status: (statusData: Status, p?: {
        host: string;
    }) => ULTIPA.Status;
    alias: (resultAlias: ResultAlias[]) => ULTIPA.Alias[];
    keyValue: (keyValuesData: Value[]) => object;
    paths: (paths: Path[]) => ULTIPA.Path[];
    graph: (paths: Path[], timezone: ULTIPA.Ttimezone) => ULTIPA.Graph;
    explainPlan: (data: ExplainPlan) => ULTIPA.ExplainPlan;
    table: (tableData: Table, timezone: ULTIPA.Ttimezone) => ULTIPA.Table;
    tables: (tablesData: Table[], timezone: ULTIPA.Ttimezone) => ULTIPA.Table[];
    toEdgeTable: (propertyTypeObject: object, schemaName: string, headers: string[], rows: string[][], timezone: ULTIPA.Ttimezone) => EntityTable;
    toPropertyTypeObject: (properties: ULTIPA.Property[]) => {};
    toNodeTable: (propertyTypeObject: object, schemaName: string, headers: string[], rows: string[][], timezone: ULTIPA.Ttimezone) => EntityTable;
    toEdgeTableWithSchema: (schema: ULTIPA.Schema, rows: ULTIPA.Edge[], timezone: ULTIPA.Ttimezone) => EntityTable;
    toNodeTableWithSchema: (schema: ULTIPA.Schema, rows: ULTIPA.Node[], timezone: ULTIPA.Ttimezone) => EntityTable;
    uuids: (tableData: EntityTable) => string[];
    nodeTable: (nodeTableData: EntityTable, timezone: ULTIPA.Ttimezone) => ULTIPA.Node[];
    edgeTable: (edgeTableData: EntityTable, timezone: ULTIPA.Ttimezone) => ULTIPA.Edge[];
    attr(attr: Attr, timezone: ULTIPA.Ttimezone): ULTIPA.Attr;
    graphPrivileges(graphPrivileges: object[]): any[];
};
export interface ResponseKeyFormat {
    jsonKeys?: string[];
    boolKeys?: string[];
    keyReplace?: object;
    dataFormat?: Function;
    mockData?: {
        tables?: any[];
    };
}
export declare const FormatResponse: {
    tableToArray: (table: ULTIPA.Table) => any[];
    formatObjects: (objs: object[], keysFormat?: ResponseKeyFormat) => any[];
    formatObject: (_obj: object, keysFormat?: ResponseKeyFormat) => {};
    successStatus: () => ULTIPA.Status;
    statisticsSum: (one?: ULTIPA.Statistics, sumOne?: ULTIPA.Statistics) => ULTIPA.Statistics;
    unknownError: (err: any, res: ULTIPA.Response) => ULTIPA.Response;
    catchUltipaUqlError: (error: Error) => ULTIPA.Response;
};
