import { Data } from '../data.js'; import { Vector } from '../vector.js'; import { Visitor } from '../visitor.js'; import { Type } from '../enum.js'; import { RecordBatch } from '../recordbatch.js'; import { TypeToDataType } from '../interfaces.js'; import { BufferRegion, FieldNode } from '../ipc/metadata/message.js'; import { DataType, Dictionary, Float, Int, Date_, Interval, Time, Timestamp, Union, Duration, Bool, Null, Utf8, LargeUtf8, Binary, LargeBinary, Decimal, FixedSizeBinary, List, FixedSizeList, Map_, Struct } from '../type.js'; /** @ignore */ export interface VectorAssembler extends Visitor { visit(node: Vector | Data): this; visitMany(nodes: readonly Data[]): this[]; getVisitFn(node: T): (data: Data>) => this; getVisitFn(node: Vector | Data | T): (data: Data) => this; visitBool(data: Data): this; visitInt(data: Data): this; visitFloat(data: Data): this; visitUtf8(data: Data): this; visitLargeUtf8(data: Data): this; visitBinary(data: Data): this; visitLargeBinary(data: Data): this; visitFixedSizeBinary(data: Data): this; visitDate(data: Data): this; visitTimestamp(data: Data): this; visitTime(data: Data): this; visitDecimal(data: Data): this; visitList(data: Data): this; visitStruct(data: Data): this; visitUnion(data: Data): this; visitInterval(data: Data): this; visitDuration(data: Data): this; visitFixedSizeList(data: Data): this; visitMap(data: Data): this; } /** @ignore */ export declare class VectorAssembler extends Visitor { /** @nocollapse */ static assemble(...args: (T | T[])[]): VectorAssembler; private constructor(); visitNull(_null: Data): this; visitDictionary(data: Data): this; get nodes(): FieldNode[]; get buffers(): ArrayBufferView[]; get byteLength(): number; get bufferRegions(): BufferRegion[]; protected _byteLength: number; protected _nodes: FieldNode[]; protected _buffers: ArrayBufferView[]; protected _bufferRegions: BufferRegion[]; }