import type { FieldDef, QueryFieldDef, TypeDesc, AtomicFieldDef, TurtleDef } from '../../../model/malloy_types'; import { SpaceEntry } from './space-entry'; import type { FieldSpace } from './field-space'; export declare abstract class SpaceField extends SpaceEntry { readonly refType = "field"; protected fieldTypeFromFieldDef(def: AtomicFieldDef): TypeDesc; protected turtleTypeFromTurtleDef(def: TurtleDef): TypeDesc; protected typeFromFieldDef(def: AtomicFieldDef | TurtleDef): TypeDesc; getQueryFieldDef(_fs: FieldSpace): QueryFieldDef | undefined; fieldDef(): FieldDef | undefined; /** * Called by field reference code generation to gain access to the * annotation properties on the field being referenced. ColumnSpaceFields * will have the original field def, and will implement this method, * nothing else should be referencable, but if somehow one of those is * referenced, don't bother to compute the fieldDef. */ constructorFieldDef(): FieldDef | undefined; }