import { BooleanField, DateField, Field, JSONField, NumberField, SQLNativeField, StringField, TimestampField } from '../fields'; import { CellBase } from './base'; import { Cell, NestCell } from '.'; import type * as Malloy from '@malloydata/malloy-interfaces'; export declare class NullCell extends CellBase { readonly cell: Malloy.CellWithNullCell; readonly field: Field; readonly parent: NestCell | undefined; constructor(cell: Malloy.CellWithNullCell, field: Field, parent: NestCell | undefined); get value(): null; get literalValue(): Malloy.LiteralValue | undefined; } /** * Unified cell for all numeric values. * Handles both regular numbers and big numbers (bigint/bigdecimal). */ export declare class NumberCell extends CellBase { readonly cell: Malloy.CellWithNumberCell; readonly field: NumberField; readonly parent: NestCell | undefined; constructor(cell: Malloy.CellWithNumberCell, field: NumberField, parent: NestCell | undefined); /** * Returns the numeric value as a JS number. * May be lossy for bigint/bigdecimal values > 2^53. */ get value(): number; /** * Returns the precise string representation for large values. * Undefined for regular numbers that fit in JS number. */ get stringValue(): string | undefined; /** * Returns the number subtype from the schema. * 'integer' | 'decimal' | 'bigint' | future 'bigdecimal' */ get subtype(): Malloy.NumberSubtype | undefined; /** * Returns true if this value needs string representation for precision. */ needsStringPrecision(): boolean; /** * Returns the numeric value as a JS number. * Alias for .value for API consistency. */ numberValue(): number; /** * Returns the value as a JS BigInt for precise integer arithmetic. * Only valid when stringValue is defined and subtype is 'bigint'. */ bigint(): bigint; compareTo(other: Cell): 1 | 0 | -1; get literalValue(): Malloy.LiteralValue | undefined; } export declare class DateCell extends CellBase { readonly cell: Malloy.CellWithDateCell; readonly field: DateField; readonly parent: NestCell | undefined; constructor(cell: Malloy.CellWithDateCell, field: DateField, parent: NestCell | undefined); get value(): Date; get timeframe(): Malloy.DateTimeframe | undefined; compareTo(other: Cell): 1 | 0 | -1; get literalValue(): Malloy.LiteralValue | undefined; } export declare class TimestampCell extends CellBase { readonly cell: Malloy.CellWithTimestampCell; readonly field: TimestampField; readonly parent: NestCell | undefined; constructor(cell: Malloy.CellWithTimestampCell, field: TimestampField, parent: NestCell | undefined); get value(): Date; get timeframe(): Malloy.TimestampTimeframe | undefined; compareTo(other: Cell): 1 | 0 | -1; get literalValue(): Malloy.LiteralValue | undefined; } export declare class JSONCell extends CellBase { readonly cell: Malloy.CellWithJSONCell; readonly field: JSONField; readonly parent: NestCell | undefined; constructor(cell: Malloy.CellWithJSONCell, field: JSONField, parent: NestCell | undefined); get value(): any; compareTo(other: Cell): 1 | 0 | -1; } export declare class SQLNativeCell extends CellBase { readonly cell: Malloy.CellWithSQLNativeCell; readonly field: SQLNativeField; readonly parent: NestCell | undefined; constructor(cell: Malloy.CellWithSQLNativeCell, field: SQLNativeField, parent: NestCell | undefined); get value(): any; compareTo(other: Cell): 1 | 0 | -1; } export declare class StringCell extends CellBase { readonly cell: Malloy.CellWithStringCell; readonly field: StringField; readonly parent: NestCell | undefined; constructor(cell: Malloy.CellWithStringCell, field: StringField, parent: NestCell | undefined); get value(): string; compareTo(other: Cell): number; get literalValue(): Malloy.LiteralValue | undefined; } export declare class BooleanCell extends CellBase { readonly cell: Malloy.CellWithBooleanCell; readonly field: BooleanField; readonly parent: NestCell | undefined; constructor(cell: Malloy.CellWithBooleanCell, field: BooleanField, parent: NestCell | undefined); get value(): boolean; compareTo(other: Cell): 1 | 0 | -1; get literalValue(): Malloy.LiteralValue | undefined; }