A-New-Day-001's picture
Upload 1591 files
be5030f
import { Data } from './data';
import { Field } from './schema';
import { DataType } from './type';
import { Vector } from './vector';
import { Clonable, Sliceable, Applicative } from './vector';
import { VectorCtorArgs, VectorType as V } from './interfaces';
import { Chunked } from './vector/chunked';
export interface Column<T extends DataType = any> {
typeId: T['TType'];
concat(...others: Vector<T>[]): Column<T>;
slice(begin?: number, end?: number): Column<T>;
clone(chunks?: Vector<T>[], offsets?: Uint32Array): Column<T>;
}
export declare class Column<T extends DataType = any> extends Chunked<T> implements Clonable<Column<T>>, Sliceable<Column<T>>, Applicative<T, Column<T>> {
static new<T extends DataType>(field: string | Field<T>, ...chunks: (Vector<T> | Vector<T>[])[]): Column<T>;
static new<T extends DataType>(field: string | Field<T>, data: Data<T>, ...args: VectorCtorArgs<V<T>>): Column<T>;
constructor(field: Field<T>, vectors?: Vector<T>[], offsets?: Uint32Array);
protected _field: Field<T>;
protected _children?: Column[];
readonly field: Field<T>;
readonly name: string;
readonly nullable: boolean;
readonly metadata: Map<string, string>;
getChildAt<R extends DataType = any>(index: number): Column<R> | null;
}