UNPKG

tedious

Version:

A TDS driver, for connecting to MS SQLServer databases.

35 lines (34 loc) • 1.11 kB
import Parser, { type TokenReader } from './stream-parser'; import { type ColumnMetadata } from './colmetadata-token-parser'; import { RowToken } from './token'; import { PLPReader } from '../value-parser'; export interface Column { value: unknown; metadata: ColumnMetadata; } /** * Reads the column values of a row one by one. Column values - especially PLP * values - can be arbitrarily large, so the progress is kept across chunks. */ export declare class ColumnValuesReader { columns: Column[]; plpReader: PLPReader | undefined; constructor(); /** * Read the remaining column values. Columns flagged in the `nullBitmap` * have no data and are `null`. */ readColumns(parser: Parser, nullBitmap: Buffer | undefined): void; } /** * Reads a `ROW` token. */ export declare class RowTokenReader extends ColumnValuesReader implements TokenReader { read(parser: Parser): RowToken; } /** * Map columns by name. If multiple columns share a name, the first one wins. */ export declare function toColumnsMap(columns: Column[]): { [key: string]: Column; };