import { Data } from '../data.js'; import { Type } from '../enum.js'; import { Visitor } from '../visitor.js'; import { TypeToDataType } from '../interfaces.js'; import { DataType, Dictionary, Bool, Null, Utf8, Binary, Decimal, FixedSizeBinary, List, FixedSizeList, Map_, Struct, Float, Float16, Float32, Float64, Int, Uint8, Uint16, Uint32, Uint64, Int8, Int16, Int32, Int64, Date_, DateDay, DateMillisecond, Interval, IntervalDayTime, IntervalYearMonth, Time, TimeSecond, TimeMillisecond, TimeMicrosecond, TimeNanosecond, Timestamp, TimestampSecond, TimestampMillisecond, TimestampMicrosecond, TimestampNanosecond, Union, DenseUnion, SparseUnion } from '../type.js'; /** @ignore */ export interface IndexOfVisitor extends Visitor { visit(node: T, value: T['TValue'] | null, index?: number): number; visitMany(nodes: T[], values: (T['TValue'] | null)[], indices: (number | undefined)[]): number[]; getVisitFn(node: Data | T): (data: Data, value: T['TValue'] | null, index?: number) => number; getVisitFn(node: T): (data: Data>, value: TypeToDataType['TValue'] | null, index?: number) => number; visitNull(data: Data, value: T['TValue'] | null, index?: number): number; visitBool(data: Data, value: T['TValue'] | null, index?: number): number; visitInt(data: Data, value: T['TValue'] | null, index?: number): number; visitInt8(data: Data, value: T['TValue'] | null, index?: number): number; visitInt16(data: Data, value: T['TValue'] | null, index?: number): number; visitInt32(data: Data, value: T['TValue'] | null, index?: number): number; visitInt64(data: Data, value: T['TValue'] | null, index?: number): number; visitUint8(data: Data, value: T['TValue'] | null, index?: number): number; visitUint16(data: Data, value: T['TValue'] | null, index?: number): number; visitUint32(data: Data, value: T['TValue'] | null, index?: number): number; visitUint64(data: Data, value: T['TValue'] | null, index?: number): number; visitFloat(data: Data, value: T['TValue'] | null, index?: number): number; visitFloat16(data: Data, value: T['TValue'] | null, index?: number): number; visitFloat32(data: Data, value: T['TValue'] | null, index?: number): number; visitFloat64(data: Data, value: T['TValue'] | null, index?: number): number; visitUtf8(data: Data, value: T['TValue'] | null, index?: number): number; visitBinary(data: Data, value: T['TValue'] | null, index?: number): number; visitFixedSizeBinary(data: Data, value: T['TValue'] | null, index?: number): number; visitDate(data: Data, value: T['TValue'] | null, index?: number): number; visitDateDay(data: Data, value: T['TValue'] | null, index?: number): number; visitDateMillisecond(data: Data, value: T['TValue'] | null, index?: number): number; visitTimestamp(data: Data, value: T['TValue'] | null, index?: number): number; visitTimestampSecond(data: Data, value: T['TValue'] | null, index?: number): number; visitTimestampMillisecond(data: Data, value: T['TValue'] | null, index?: number): number; visitTimestampMicrosecond(data: Data, value: T['TValue'] | null, index?: number): number; visitTimestampNanosecond(data: Data, value: T['TValue'] | null, index?: number): number; visitTime(data: Data, value: T['TValue'] | null, index?: number): number; visitTimeSecond(data: Data, value: T['TValue'] | null, index?: number): number; visitTimeMillisecond(data: Data, value: T['TValue'] | null, index?: number): number; visitTimeMicrosecond(data: Data, value: T['TValue'] | null, index?: number): number; visitTimeNanosecond(data: Data, value: T['TValue'] | null, index?: number): number; visitDecimal(data: Data, value: T['TValue'] | null, index?: number): number; visitList(data: Data, value: T['TValue'] | null, index?: number): number; visitStruct(data: Data, value: T['TValue'] | null, index?: number): number; visitUnion(data: Data, value: T['TValue'] | null, index?: number): number; visitDenseUnion(data: Data, value: T['TValue'] | null, index?: number): number; visitSparseUnion(data: Data, value: T['TValue'] | null, index?: number): number; visitDictionary(data: Data, value: T['TValue'] | null, index?: number): number; visitInterval(data: Data, value: T['TValue'] | null, index?: number): number; visitIntervalDayTime(data: Data, value: T['TValue'] | null, index?: number): number; visitIntervalYearMonth(data: Data, value: T['TValue'] | null, index?: number): number; visitFixedSizeList(data: Data, value: T['TValue'] | null, index?: number): number; visitMap(data: Data, value: T['TValue'] | null, index?: number): number; } /** @ignore */ export declare class IndexOfVisitor extends Visitor { } /** @ignore */ export declare const instance: IndexOfVisitor;