@quack-protocol/sdk - v0.2.0
    Preparing search index...

    Interface QuackArrowIPCOptions

    Options for encoding Quack results as Arrow IPC bytes.

    interface QuackArrowIPCOptions {
        codec?: CompressionType_ | null;
        duckTypes?: readonly LogicalType[];
        format?: "stream" | "file";
        useBigInt?: boolean;
        useBigIntTimestamp?: boolean;
        useDate?: boolean;
        useDecimalInt?: boolean;
        useMap?: boolean;
        useProxy?: boolean;
    }

    Hierarchy (View Summary)

    Index

    Properties

    codec?: CompressionType_ | null

    Optional Flechette compression codec id.

    duckTypes?: readonly LogicalType[]

    DuckDB logical types to use when chunks are empty or types should be overridden.

    format?: "stream" | "file"

    Arrow IPC output format. Defaults to Flechette's stream format.

    useBigInt?: boolean

    If true, extract 64-bit integers as JavaScript BigInt values. Otherwise, coerce long integers to JavaScript number values (default).

    useBigIntTimestamp?: boolean

    If true, extract 64-bit timestamps as JavaScript BigInt values. Otherwise, coerce timestamps to float milliseconds.

    useDate?: boolean

    If true, extract dates and timestamps as JavaScript Date objects. Otherwise, return numerical timestamp values (default).

    useDecimalInt?: boolean

    If true, extract decimal-type data as scaled integer values, where fractional digits are scaled to integer positions. Returned integers are BigInt values for decimal bit widths of 64 bits or higher and 32-bit integers (as JavaScript number) otherwise. If false, decimals are converted to floating-point numbers (default).

    useMap?: boolean

    If true, extract Arrow 'Map' values as JavaScript Map instances. Otherwise, return an array of [key, value] pairs compatible with both Map and Object.fromEntries (default).

    useProxy?: boolean

    If true, extract Arrow 'Struct' values and table row objects using zero-copy proxy objects that extract data from underlying Arrow batches. The proxy objects can improve performance and reduce memory usage, but do not support property enumeration (Object.keys, Object.values, Object.entries) or spreading ({ ...object }).