-
Notifications
You must be signed in to change notification settings - Fork 41
Closed
Labels
enhancementNew feature or requestNew feature or request
Description
Use case
Use case will be for handling formatting of the data value from a response, when meta
is present on an app.
Describe the solution you'd like
This line ^ could be something more like the following
/** @see https://clickhouse.com/docs/en/sql-reference/data-types */
const DATA_TYPES = [
'UInt8', 'UInt16', 'UInt32', 'UInt64', 'UInt128', 'UInt256', 'Int8', 'Int16', 'Int32', 'Int64', 'Int128', 'Int256',
'Float32', 'Float64',
'Boolean',
'String', 'FixedString',
'Date', 'Date32',
'DateTime', 'DateTime64',
'JSON',
'UUID',
'Enum', 'LowCardinality',
'Array',
'Map',
'SimpleAggregateFunction', 'AggregateFunction',
'Nested',
'Tuple',
'Nullable',
'IPv4', 'IPv6',
'Point', 'Ring', 'Polygon', 'MultiPolygon',
'Expression', 'Set', 'Nothing', 'Interval'
] as const;
type DataType = typeof DATA_TYPES[number];
// ...
meta?: Array<{
name: string;
type: DataType;
}>;
Describe the alternatives you've considered
This type could be an enum or string literal. I'd have no real preference.
Additional context
What would be nice for me as a consumer of @clickhouse/client
is to be able to treat the library as a comprehensive source of truth for what data types I should expect to be able to format. This way, I can format them accordingly in my apps (especially if new data types are added later on or renamed, so I'd see the type change).
Metadata
Metadata
Assignees
Labels
enhancementNew feature or requestNew feature or request