import { Field } from './fields'; import { Cell } from './cells'; import type * as Malloy from '@malloydata/malloy-interfaces'; export type DrillEntry = { field: Field; value: string | number | boolean | Date | null; } | { where: string; }; export type DrillValue = { field: Field; value: Cell; } | { where: string; }; export type SortableField = { field: Field; dir: 'asc' | 'desc' | undefined; }; export type ArrayFieldInfo = Malloy.DimensionInfo & { type: Malloy.AtomicTypeWithArrayType; }; export type RepeatedRecordFieldInfo = Malloy.DimensionInfo & { type: Malloy.AtomicTypeWithArrayType & { element_type: Malloy.AtomicTypeWithRecordType; }; }; export type RecordFieldInfo = Malloy.DimensionInfo & { type: Malloy.AtomicTypeWithRecordType; }; export type NumberFieldInfo = Malloy.DimensionInfo & { type: Malloy.AtomicTypeWithNumberType; }; export type DateFieldInfo = Malloy.DimensionInfo & { type: Malloy.AtomicTypeWithDateType; }; export type JSONFieldInfo = Malloy.DimensionInfo & { type: Malloy.AtomicTypeWithJSONType; }; export type StringFieldInfo = Malloy.DimensionInfo & { type: Malloy.AtomicTypeWithStringType; }; export type TimestampFieldInfo = Malloy.DimensionInfo & { type: Malloy.AtomicTypeWithTimestampType; }; export type BooleanFieldInfo = Malloy.DimensionInfo & { type: Malloy.AtomicTypeWithBooleanType; }; export type SQLNativeFieldInfo = Malloy.DimensionInfo & { type: Malloy.AtomicTypeWithSQLNativeType; }; export declare enum FieldType { Array = "array", RepeatedRecord = "repeated_record", Record = "record", Number = "number", Date = "date", JSON = "json", String = "string", Timestamp = "timestamp", Boolean = "boolean", SQLNative = "sql_native" }