import type { ColumnCodec } from './column'; import type { BinaryReader } from '../protocol/binary_reader'; import type { BinaryWriter } from '../protocol/binary_writer'; /** Date — UInt16 days since 1970-01-01 */ export declare class DateCodec implements ColumnCodec { read(reader: BinaryReader, rows: number): string[]; write(writer: BinaryWriter, values: unknown[]): void; } /** Date32 — Int32 days since 1970-01-01 (supports wider range) */ export declare class Date32Codec implements ColumnCodec { read(reader: BinaryReader, rows: number): string[]; write(writer: BinaryWriter, values: unknown[]): void; } /** DateTime — UInt32 epoch seconds */ export declare class DateTimeCodec implements ColumnCodec { readonly timezone?: string; constructor(timezone?: string); read(reader: BinaryReader, rows: number): string[]; write(writer: BinaryWriter, values: unknown[]): void; } /** DateTime64(precision) — Int64 with sub-second precision */ export declare class DateTime64Codec implements ColumnCodec { private readonly scale; readonly precision: number; readonly timezone?: string; constructor(precision: number, timezone?: string); read(reader: BinaryReader, rows: number): string[]; write(writer: BinaryWriter, values: unknown[]): void; }