/**
 * Type of query result column, see  https export type ColumnType = 'boolean' | 'unsignedLong' | 'long' | 'double' | 'string' | 'base64Binary' | 'dateTime:RFC3339' | 'duration' | string ; /**
 * Column metadata class of a  http column.
  export interface FluxTableColumn { /**
     * Label (e.g., "_start", "_stop", "_time").
     */ label : string ; /**
     * The data type of column (e.g., "string", "long", "dateTime:RFC3339").
     */ dataType : ColumnType ; /**
     * Boolean flag indicating if the column is a part of the table's group key.
     */ group : boolean ; /**
     * Default value to be used for rows whose string value is an empty string.
     */ defaultValue : string ; /**
     * Index of this column in a row array.
     */ index : number ; } /**
 * FluxTableColumn implementation.
 */ class FluxTableColumnImpl implements FluxTableColumn { label : string ; dataType : ColumnType ; group : boolean ; defaultValue : string ; index : number ; } returns export function newFluxTableColumn ( ) { return new FluxTableColumnImpl ( ) ; } param object returns export function createFluxTableColumn ( object ) { const retVal = new FluxTableColumnImpl ( ) ; retVal . label = String ( object . label ) ; retVal . dataType = object . dataType as ColumnType ; retVal . group = Boolean ( object . group ) ; retVal . defaultValue = object . defaultValue ?? '' ; retVal . index = object . index ?? 0 ; return retVal ; }