var ColumnType;
(function (ColumnType) {
    ColumnType["ObjectID"] = "Object ID";
    ColumnType["Date"] = "Date";
    ColumnType["Boolean"] = "Boolean";
    ColumnType["Number"] = "Number";
    ColumnType["Text"] = "Text";
    ColumnType["JSON"] = "JSON";
    ColumnType["JSONArray"] = "JSON Array";
    ColumnType["Decimal"] = "Decimal";
    ColumnType["ArrayNumber"] = "Array of Numbers";
    ColumnType["ArrayText"] = "Array of Text";
    ColumnType["LongNumber"] = "Long Number";
    ColumnType["BigNumber"] = "Big Number";
    ColumnType["DateTime64"] = "DateTime64";
    ColumnType["IP"] = "IP";
    ColumnType["Port"] = "Port";
    ColumnType["MapStringString"] = "Map(String, String)";
    ColumnType["ArrayBigNumber"] = "Array of Big Numbers";
    ColumnType["ArrayDecimal"] = "Array of Decimals";
    /*
     * ClickHouse AggregateFunction(...) state column. Used by the target
     * tables of AggregatingMergeTree materialized views (e.g. the
     * per-minute metric pre-aggregate, anomaly baseline rolls).
     *
     * The concrete function and argument types live in the column's
     * `aggregateFunctionDefinition` field — e.g. "stddevPop, Float64" —
     * because the parameterization can't be expressed as a single enum
     * value (you'd need a combinatorial explosion). The schema generator
     * emits `AggregateFunction(<aggregateFunctionDefinition>)` for these
     * columns and skips the usual `Nullable(...)` wrap (ClickHouse does
     * not support nullable AggregateFunction columns).
     */
    ColumnType["AggregateFunction"] = "AggregateFunction";
    /*
     * 8-bit unsigned integer. We don't have a generic `UInt*` family; this
     * is added so columns like `hourOfWeek` (range 0..167) can declare
     * their tight ClickHouse type instead of paying for an Int32. Future
     * UInt sizes can be added if there's a reason.
     */
    ColumnType["UInt8"] = "UInt8";
    ColumnType["UInt64"] = "UInt64";
})(ColumnType || (ColumnType = {}));
export default ColumnType;
//# sourceMappingURL=TableColumnType.js.map