import { Cell, NestCell, RecordCell, ArrayCell, BooleanCell, DateCell, JSONCell, NullCell, NumberCell, RepeatedRecordCell, StringCell, TimestampCell, TimeCell, RecordOrRepeatedRecordCell, CellValue } from '.'; import { Field } from '../fields'; import { DrillEntry } from '../types'; import type * as Malloy from '@malloydata/malloy-interfaces'; export declare abstract class CellBase { readonly cell: Malloy.Cell; readonly field: Field; readonly parent: NestCell | undefined; constructor(cell: Malloy.Cell, field: Field, parent: NestCell | undefined); get literalValue(): Malloy.LiteralValue | undefined; abstract get value(): CellValue; isNull(): this is NullCell; isArray(): this is ArrayCell; isRecord(): this is RecordCell; isRepeatedRecord(): this is RepeatedRecordCell; isRecordOrRepeatedRecord(): this is RecordOrRepeatedRecordCell; isNest(): this is NestCell; isNumber(): this is NumberCell; isDate(): this is DateCell; isTime(): this is TimeCell; isJSON(): this is JSONCell; isString(): this is StringCell; isTimestamp(): this is TimestampCell; isBoolean(): this is BooleanCell; asCell(): Cell; root(): Cell; private getPathInfo; getParentRecord(levelsUp: number): RecordCell; getRelativeCell(relativeDataPath: string): Cell | undefined; cellAt(path: string[] | string): Cell; cellAtPath(path: string[]): Cell; compareTo(_other: Cell): number; canDrill(): boolean; getStableDrillQuery(): Malloy.Query | undefined; getStableDrillClauses(): Malloy.DrillOperation[] | undefined; getDrillExpressions(): string[]; getDrillEntries(): DrillEntry[]; getStableDrillQueryMalloy(): string | undefined; getDrillQueryMalloy(): string; }