import * as __sql_sql_ts0 from "../sql/sql.cjs";
import { PartialWithUndefined } from "../utils.cjs";
import { CastCodec, Codecs } from "../codecs.cjs";

//#region src/mysql-core/codecs.d.ts
type MySqlType = 'tinyint' | 'smallint' | 'mediumint' | 'int' | 'bigint' | 'bigint:number' | 'bigint:string' | 'serial' | 'decimal' | 'decimal:number' | 'decimal:bigint' | 'float' | 'double' | 'real' | 'bit' | 'boolean' | 'char' | 'varchar' | 'tinytext' | 'text' | 'mediumtext' | 'longtext' | 'enum' | 'set' | 'binary' | 'varbinary' | 'tinyblob' | 'tinyblob:buffer' | 'blob' | 'blob:buffer' | 'mediumblob' | 'mediumblob:buffer' | 'longblob' | 'longblob:buffer' | 'date' | 'date:string' | 'datetime' | 'datetime:string' | 'time' | 'timestamp' | 'timestamp:string' | 'year' | 'json' | 'geometry' | 'point' | 'linestring' | 'polygon' | 'multipoint' | 'multilinestring' | 'multipolygon' | 'geometrycollection';
type MySqlAliasType = 'integer' | 'int1' | 'int2' | 'int3' | 'middleint' | 'int4' | 'int8' | 'dec' | 'fixed' | 'numeric' | 'double precision' | 'bool' | 'character' | 'nchar' | 'national char' | 'national character' | 'character varying' | 'char varying' | 'nvarchar' | 'national varchar' | 'national character varying' | 'long varchar' | 'long' | 'long varbinary';
type MySqlColumnType = MySqlType | MySqlAliasType;
declare function resolveMySqlTypeAlias(type: string): string;
declare const unionsTypeTable: {
  readonly tinyint: {
    readonly tinyint: "tinyint";
    readonly smallint: "smallint";
    readonly mediumint: "mediumint";
    readonly int: "int";
    readonly bigint: "bigint:number";
    readonly 'bigint:number': "bigint:number";
    readonly 'bigint:string': "bigint:number";
    readonly serial: "decimal:number";
    readonly decimal: "decimal:number";
    readonly 'decimal:number': "decimal:number";
    readonly 'decimal:bigint': "decimal:number";
    readonly float: "float";
    readonly double: "double";
    readonly real: "double";
    readonly bit: "decimal:number";
    readonly boolean: "tinyint";
    readonly char: "char";
    readonly varchar: "varchar";
    readonly tinytext: "text";
    readonly text: "mediumtext";
    readonly mediumtext: "longtext";
    readonly longtext: "longtext";
    readonly enum: "varchar";
    readonly set: "varchar";
    readonly binary: "binary";
    readonly varbinary: "varbinary";
    readonly tinyblob: "tinyblob";
    readonly 'tinyblob:buffer': "tinyblob";
    readonly blob: "blob";
    readonly 'blob:buffer': "blob";
    readonly mediumblob: "mediumblob";
    readonly 'mediumblob:buffer': "mediumblob";
    readonly longblob: "longblob";
    readonly 'longblob:buffer': "longblob";
    readonly date: "varchar";
    readonly 'date:string': "varchar";
    readonly datetime: "varchar";
    readonly 'datetime:string': "varchar";
    readonly time: "varchar";
    readonly timestamp: "varchar";
    readonly 'timestamp:string': "varchar";
    readonly year: "tinyint";
    readonly json: "longtext";
    readonly geometry: "longblob";
    readonly point: "longblob";
    readonly linestring: "longblob";
    readonly polygon: "longblob";
    readonly multipoint: "longblob";
    readonly multilinestring: "longblob";
    readonly multipolygon: "longblob";
    readonly geometrycollection: "longblob";
  };
  readonly smallint: {
    readonly tinyint: "smallint";
    readonly smallint: "smallint";
    readonly mediumint: "mediumint";
    readonly int: "int";
    readonly bigint: "bigint:number";
    readonly 'bigint:number': "bigint:number";
    readonly 'bigint:string': "bigint:number";
    readonly serial: "decimal:number";
    readonly decimal: "decimal:number";
    readonly 'decimal:number': "decimal:number";
    readonly 'decimal:bigint': "decimal:number";
    readonly float: "float";
    readonly double: "double";
    readonly real: "double";
    readonly bit: "decimal:number";
    readonly boolean: "smallint";
    readonly char: "char";
    readonly varchar: "varchar";
    readonly tinytext: "text";
    readonly text: "mediumtext";
    readonly mediumtext: "longtext";
    readonly longtext: "longtext";
    readonly enum: "varchar";
    readonly set: "varchar";
    readonly binary: "binary";
    readonly varbinary: "varbinary";
    readonly tinyblob: "tinyblob";
    readonly 'tinyblob:buffer': "tinyblob";
    readonly blob: "blob";
    readonly 'blob:buffer': "blob";
    readonly mediumblob: "mediumblob";
    readonly 'mediumblob:buffer': "mediumblob";
    readonly longblob: "longblob";
    readonly 'longblob:buffer': "longblob";
    readonly date: "varchar";
    readonly 'date:string': "varchar";
    readonly datetime: "varchar";
    readonly 'datetime:string': "varchar";
    readonly time: "varchar";
    readonly timestamp: "varchar";
    readonly 'timestamp:string': "varchar";
    readonly year: "smallint";
    readonly json: "longtext";
    readonly geometry: "longblob";
    readonly point: "longblob";
    readonly linestring: "longblob";
    readonly polygon: "longblob";
    readonly multipoint: "longblob";
    readonly multilinestring: "longblob";
    readonly multipolygon: "longblob";
    readonly geometrycollection: "longblob";
  };
  readonly mediumint: {
    readonly tinyint: "mediumint";
    readonly smallint: "mediumint";
    readonly mediumint: "mediumint";
    readonly int: "int";
    readonly bigint: "bigint:number";
    readonly 'bigint:number': "bigint:number";
    readonly 'bigint:string': "bigint:number";
    readonly serial: "decimal:number";
    readonly decimal: "decimal:number";
    readonly 'decimal:number': "decimal:number";
    readonly 'decimal:bigint': "decimal:number";
    readonly float: "float";
    readonly double: "double";
    readonly real: "double";
    readonly bit: "decimal:number";
    readonly boolean: "mediumint";
    readonly char: "char";
    readonly varchar: "varchar";
    readonly tinytext: "text";
    readonly text: "mediumtext";
    readonly mediumtext: "longtext";
    readonly longtext: "longtext";
    readonly enum: "varchar";
    readonly set: "varchar";
    readonly binary: "binary";
    readonly varbinary: "varbinary";
    readonly tinyblob: "tinyblob";
    readonly 'tinyblob:buffer': "tinyblob";
    readonly blob: "blob";
    readonly 'blob:buffer': "blob";
    readonly mediumblob: "mediumblob";
    readonly 'mediumblob:buffer': "mediumblob";
    readonly longblob: "longblob";
    readonly 'longblob:buffer': "longblob";
    readonly date: "varchar";
    readonly 'date:string': "varchar";
    readonly datetime: "varchar";
    readonly 'datetime:string': "varchar";
    readonly time: "varchar";
    readonly timestamp: "varchar";
    readonly 'timestamp:string': "varchar";
    readonly year: "mediumint";
    readonly json: "longtext";
    readonly geometry: "longblob";
    readonly point: "longblob";
    readonly linestring: "longblob";
    readonly polygon: "longblob";
    readonly multipoint: "longblob";
    readonly multilinestring: "longblob";
    readonly multipolygon: "longblob";
    readonly geometrycollection: "longblob";
  };
  readonly int: {
    readonly tinyint: "int";
    readonly smallint: "int";
    readonly mediumint: "int";
    readonly int: "int";
    readonly bigint: "bigint:number";
    readonly 'bigint:number': "bigint:number";
    readonly 'bigint:string': "bigint:number";
    readonly serial: "decimal:number";
    readonly decimal: "decimal:number";
    readonly 'decimal:number': "decimal:number";
    readonly 'decimal:bigint': "decimal:number";
    readonly float: "double";
    readonly double: "double";
    readonly real: "double";
    readonly bit: "decimal:number";
    readonly boolean: "int";
    readonly char: "char";
    readonly varchar: "varchar";
    readonly tinytext: "text";
    readonly text: "mediumtext";
    readonly mediumtext: "longtext";
    readonly longtext: "longtext";
    readonly enum: "varchar";
    readonly set: "varchar";
    readonly binary: "binary";
    readonly varbinary: "varbinary";
    readonly tinyblob: "tinyblob";
    readonly 'tinyblob:buffer': "tinyblob";
    readonly blob: "blob";
    readonly 'blob:buffer': "blob";
    readonly mediumblob: "mediumblob";
    readonly 'mediumblob:buffer': "mediumblob";
    readonly longblob: "longblob";
    readonly 'longblob:buffer': "longblob";
    readonly date: "varchar";
    readonly 'date:string': "varchar";
    readonly datetime: "varchar";
    readonly 'datetime:string': "varchar";
    readonly time: "varchar";
    readonly timestamp: "varchar";
    readonly 'timestamp:string': "varchar";
    readonly year: "int";
    readonly json: "longtext";
    readonly geometry: "longblob";
    readonly point: "longblob";
    readonly linestring: "longblob";
    readonly polygon: "longblob";
    readonly multipoint: "longblob";
    readonly multilinestring: "longblob";
    readonly multipolygon: "longblob";
    readonly geometrycollection: "longblob";
  };
  readonly bigint: {
    readonly tinyint: "bigint";
    readonly smallint: "bigint";
    readonly mediumint: "bigint";
    readonly int: "bigint";
    readonly bigint: "bigint";
    readonly 'bigint:number': "bigint";
    readonly 'bigint:string': "bigint";
    readonly serial: "decimal:bigint";
    readonly decimal: "decimal:bigint";
    readonly 'decimal:number': "decimal:bigint";
    readonly 'decimal:bigint': "decimal:bigint";
    readonly float: "double";
    readonly double: "double";
    readonly real: "double";
    readonly bit: "decimal:bigint";
    readonly boolean: "bigint";
    readonly char: "char";
    readonly varchar: "varchar";
    readonly tinytext: "text";
    readonly text: "mediumtext";
    readonly mediumtext: "longtext";
    readonly longtext: "longtext";
    readonly enum: "varchar";
    readonly set: "varchar";
    readonly binary: "binary";
    readonly varbinary: "varbinary";
    readonly tinyblob: "tinyblob";
    readonly 'tinyblob:buffer': "tinyblob";
    readonly blob: "blob";
    readonly 'blob:buffer': "blob";
    readonly mediumblob: "mediumblob";
    readonly 'mediumblob:buffer': "mediumblob";
    readonly longblob: "longblob";
    readonly 'longblob:buffer': "longblob";
    readonly date: "varchar";
    readonly 'date:string': "varchar";
    readonly datetime: "varchar";
    readonly 'datetime:string': "varchar";
    readonly time: "varchar";
    readonly timestamp: "varchar";
    readonly 'timestamp:string': "varchar";
    readonly year: "bigint";
    readonly json: "longtext";
    readonly geometry: "longblob";
    readonly point: "longblob";
    readonly linestring: "longblob";
    readonly polygon: "longblob";
    readonly multipoint: "longblob";
    readonly multilinestring: "longblob";
    readonly multipolygon: "longblob";
    readonly geometrycollection: "longblob";
  };
  readonly 'bigint:number': {
    readonly tinyint: "bigint:number";
    readonly smallint: "bigint:number";
    readonly mediumint: "bigint:number";
    readonly int: "bigint:number";
    readonly bigint: "bigint:number";
    readonly 'bigint:number': "bigint:number";
    readonly 'bigint:string': "bigint:number";
    readonly serial: "decimal:number";
    readonly decimal: "decimal:number";
    readonly 'decimal:number': "decimal:number";
    readonly 'decimal:bigint': "decimal:number";
    readonly float: "double";
    readonly double: "double";
    readonly real: "double";
    readonly bit: "decimal:number";
    readonly boolean: "bigint:number";
    readonly char: "char";
    readonly varchar: "varchar";
    readonly tinytext: "text";
    readonly text: "mediumtext";
    readonly mediumtext: "longtext";
    readonly longtext: "longtext";
    readonly enum: "varchar";
    readonly set: "varchar";
    readonly binary: "binary";
    readonly varbinary: "varbinary";
    readonly tinyblob: "tinyblob";
    readonly 'tinyblob:buffer': "tinyblob";
    readonly blob: "blob";
    readonly 'blob:buffer': "blob";
    readonly mediumblob: "mediumblob";
    readonly 'mediumblob:buffer': "mediumblob";
    readonly longblob: "longblob";
    readonly 'longblob:buffer': "longblob";
    readonly date: "varchar";
    readonly 'date:string': "varchar";
    readonly datetime: "varchar";
    readonly 'datetime:string': "varchar";
    readonly time: "varchar";
    readonly timestamp: "varchar";
    readonly 'timestamp:string': "varchar";
    readonly year: "bigint:number";
    readonly json: "longtext";
    readonly geometry: "longblob";
    readonly point: "longblob";
    readonly linestring: "longblob";
    readonly polygon: "longblob";
    readonly multipoint: "longblob";
    readonly multilinestring: "longblob";
    readonly multipolygon: "longblob";
    readonly geometrycollection: "longblob";
  };
  readonly 'bigint:string': {
    readonly tinyint: "bigint:string";
    readonly smallint: "bigint:string";
    readonly mediumint: "bigint:string";
    readonly int: "bigint:string";
    readonly bigint: "bigint:string";
    readonly 'bigint:number': "bigint:string";
    readonly 'bigint:string': "bigint:string";
    readonly serial: "decimal";
    readonly decimal: "decimal";
    readonly 'decimal:number': "decimal";
    readonly 'decimal:bigint': "decimal";
    readonly float: "double";
    readonly double: "double";
    readonly real: "double";
    readonly bit: "decimal";
    readonly boolean: "bigint:string";
    readonly char: "char";
    readonly varchar: "varchar";
    readonly tinytext: "text";
    readonly text: "mediumtext";
    readonly mediumtext: "longtext";
    readonly longtext: "longtext";
    readonly enum: "varchar";
    readonly set: "varchar";
    readonly binary: "binary";
    readonly varbinary: "varbinary";
    readonly tinyblob: "tinyblob";
    readonly 'tinyblob:buffer': "tinyblob";
    readonly blob: "blob";
    readonly 'blob:buffer': "blob";
    readonly mediumblob: "mediumblob";
    readonly 'mediumblob:buffer': "mediumblob";
    readonly longblob: "longblob";
    readonly 'longblob:buffer': "longblob";
    readonly date: "varchar";
    readonly 'date:string': "varchar";
    readonly datetime: "varchar";
    readonly 'datetime:string': "varchar";
    readonly time: "varchar";
    readonly timestamp: "varchar";
    readonly 'timestamp:string': "varchar";
    readonly year: "bigint:string";
    readonly json: "longtext";
    readonly geometry: "longblob";
    readonly point: "longblob";
    readonly linestring: "longblob";
    readonly polygon: "longblob";
    readonly multipoint: "longblob";
    readonly multilinestring: "longblob";
    readonly multipolygon: "longblob";
    readonly geometrycollection: "longblob";
  };
  readonly serial: {
    readonly tinyint: "decimal:number";
    readonly smallint: "decimal:number";
    readonly mediumint: "decimal:number";
    readonly int: "decimal:number";
    readonly bigint: "decimal:number";
    readonly 'bigint:number': "decimal:number";
    readonly 'bigint:string': "decimal:number";
    readonly serial: "bigint:number";
    readonly decimal: "decimal:number";
    readonly 'decimal:number': "decimal:number";
    readonly 'decimal:bigint': "decimal:number";
    readonly float: "double";
    readonly double: "double";
    readonly real: "double";
    readonly bit: "bigint:number";
    readonly boolean: "decimal:number";
    readonly char: "char";
    readonly varchar: "varchar";
    readonly tinytext: "text";
    readonly text: "mediumtext";
    readonly mediumtext: "longtext";
    readonly longtext: "longtext";
    readonly enum: "varchar";
    readonly set: "varchar";
    readonly binary: "binary";
    readonly varbinary: "varbinary";
    readonly tinyblob: "tinyblob";
    readonly 'tinyblob:buffer': "tinyblob";
    readonly blob: "blob";
    readonly 'blob:buffer': "blob";
    readonly mediumblob: "mediumblob";
    readonly 'mediumblob:buffer': "mediumblob";
    readonly longblob: "longblob";
    readonly 'longblob:buffer': "longblob";
    readonly date: "varchar";
    readonly 'date:string': "varchar";
    readonly datetime: "varchar";
    readonly 'datetime:string': "varchar";
    readonly time: "varchar";
    readonly timestamp: "varchar";
    readonly 'timestamp:string': "varchar";
    readonly year: "bigint:number";
    readonly json: "longtext";
    readonly geometry: "longblob";
    readonly point: "longblob";
    readonly linestring: "longblob";
    readonly polygon: "longblob";
    readonly multipoint: "longblob";
    readonly multilinestring: "longblob";
    readonly multipolygon: "longblob";
    readonly geometrycollection: "longblob";
  };
  readonly decimal: {
    readonly tinyint: "decimal";
    readonly smallint: "decimal";
    readonly mediumint: "decimal";
    readonly int: "decimal";
    readonly bigint: "decimal";
    readonly 'bigint:number': "decimal";
    readonly 'bigint:string': "decimal";
    readonly serial: "decimal";
    readonly decimal: "decimal";
    readonly 'decimal:number': "decimal";
    readonly 'decimal:bigint': "decimal";
    readonly float: "double";
    readonly double: "double";
    readonly real: "double";
    readonly bit: "decimal";
    readonly boolean: "decimal";
    readonly char: "char";
    readonly varchar: "varchar";
    readonly tinytext: "text";
    readonly text: "mediumtext";
    readonly mediumtext: "longtext";
    readonly longtext: "longtext";
    readonly enum: "varchar";
    readonly set: "varchar";
    readonly binary: "binary";
    readonly varbinary: "varbinary";
    readonly tinyblob: "tinyblob";
    readonly 'tinyblob:buffer': "tinyblob";
    readonly blob: "blob";
    readonly 'blob:buffer': "blob";
    readonly mediumblob: "mediumblob";
    readonly 'mediumblob:buffer': "mediumblob";
    readonly longblob: "longblob";
    readonly 'longblob:buffer': "longblob";
    readonly date: "varchar";
    readonly 'date:string': "varchar";
    readonly datetime: "varchar";
    readonly 'datetime:string': "varchar";
    readonly time: "varchar";
    readonly timestamp: "varchar";
    readonly 'timestamp:string': "varchar";
    readonly year: "decimal";
    readonly json: "longtext";
    readonly geometry: "longblob";
    readonly point: "longblob";
    readonly linestring: "longblob";
    readonly polygon: "longblob";
    readonly multipoint: "longblob";
    readonly multilinestring: "longblob";
    readonly multipolygon: "longblob";
    readonly geometrycollection: "longblob";
  };
  readonly 'decimal:number': {
    readonly tinyint: "decimal:number";
    readonly smallint: "decimal:number";
    readonly mediumint: "decimal:number";
    readonly int: "decimal:number";
    readonly bigint: "decimal:number";
    readonly 'bigint:number': "decimal:number";
    readonly 'bigint:string': "decimal:number";
    readonly serial: "decimal:number";
    readonly decimal: "decimal:number";
    readonly 'decimal:number': "decimal:number";
    readonly 'decimal:bigint': "decimal:number";
    readonly float: "double";
    readonly double: "double";
    readonly real: "double";
    readonly bit: "decimal:number";
    readonly boolean: "decimal:number";
    readonly char: "char";
    readonly varchar: "varchar";
    readonly tinytext: "text";
    readonly text: "mediumtext";
    readonly mediumtext: "longtext";
    readonly longtext: "longtext";
    readonly enum: "varchar";
    readonly set: "varchar";
    readonly binary: "binary";
    readonly varbinary: "varbinary";
    readonly tinyblob: "tinyblob";
    readonly 'tinyblob:buffer': "tinyblob";
    readonly blob: "blob";
    readonly 'blob:buffer': "blob";
    readonly mediumblob: "mediumblob";
    readonly 'mediumblob:buffer': "mediumblob";
    readonly longblob: "longblob";
    readonly 'longblob:buffer': "longblob";
    readonly date: "varchar";
    readonly 'date:string': "varchar";
    readonly datetime: "varchar";
    readonly 'datetime:string': "varchar";
    readonly time: "varchar";
    readonly timestamp: "varchar";
    readonly 'timestamp:string': "varchar";
    readonly year: "decimal:number";
    readonly json: "longtext";
    readonly geometry: "longblob";
    readonly point: "longblob";
    readonly linestring: "longblob";
    readonly polygon: "longblob";
    readonly multipoint: "longblob";
    readonly multilinestring: "longblob";
    readonly multipolygon: "longblob";
    readonly geometrycollection: "longblob";
  };
  readonly 'decimal:bigint': {
    readonly tinyint: "decimal:bigint";
    readonly smallint: "decimal:bigint";
    readonly mediumint: "decimal:bigint";
    readonly int: "decimal:bigint";
    readonly bigint: "decimal:bigint";
    readonly 'bigint:number': "decimal:bigint";
    readonly 'bigint:string': "decimal:bigint";
    readonly serial: "decimal:bigint";
    readonly decimal: "decimal:bigint";
    readonly 'decimal:number': "decimal:bigint";
    readonly 'decimal:bigint': "decimal:bigint";
    readonly float: "double";
    readonly double: "double";
    readonly real: "double";
    readonly bit: "decimal:bigint";
    readonly boolean: "decimal:bigint";
    readonly char: "char";
    readonly varchar: "varchar";
    readonly tinytext: "text";
    readonly text: "mediumtext";
    readonly mediumtext: "longtext";
    readonly longtext: "longtext";
    readonly enum: "varchar";
    readonly set: "varchar";
    readonly binary: "binary";
    readonly varbinary: "varbinary";
    readonly tinyblob: "tinyblob";
    readonly 'tinyblob:buffer': "tinyblob";
    readonly blob: "blob";
    readonly 'blob:buffer': "blob";
    readonly mediumblob: "mediumblob";
    readonly 'mediumblob:buffer': "mediumblob";
    readonly longblob: "longblob";
    readonly 'longblob:buffer': "longblob";
    readonly date: "varchar";
    readonly 'date:string': "varchar";
    readonly datetime: "varchar";
    readonly 'datetime:string': "varchar";
    readonly time: "varchar";
    readonly timestamp: "varchar";
    readonly 'timestamp:string': "varchar";
    readonly year: "decimal:bigint";
    readonly json: "longtext";
    readonly geometry: "longblob";
    readonly point: "longblob";
    readonly linestring: "longblob";
    readonly polygon: "longblob";
    readonly multipoint: "longblob";
    readonly multilinestring: "longblob";
    readonly multipolygon: "longblob";
    readonly geometrycollection: "longblob";
  };
  readonly float: {
    readonly tinyint: "float";
    readonly smallint: "float";
    readonly mediumint: "float";
    readonly int: "double";
    readonly bigint: "float";
    readonly 'bigint:number': "float";
    readonly 'bigint:string': "float";
    readonly serial: "float";
    readonly decimal: "double";
    readonly 'decimal:number': "double";
    readonly 'decimal:bigint': "double";
    readonly float: "float";
    readonly double: "double";
    readonly real: "double";
    readonly bit: "double";
    readonly boolean: "float";
    readonly char: "char";
    readonly varchar: "varchar";
    readonly tinytext: "text";
    readonly text: "mediumtext";
    readonly mediumtext: "longtext";
    readonly longtext: "longtext";
    readonly enum: "varchar";
    readonly set: "varchar";
    readonly binary: "binary";
    readonly varbinary: "varbinary";
    readonly tinyblob: "tinyblob";
    readonly 'tinyblob:buffer': "tinyblob";
    readonly blob: "blob";
    readonly 'blob:buffer': "blob";
    readonly mediumblob: "mediumblob";
    readonly 'mediumblob:buffer': "mediumblob";
    readonly longblob: "longblob";
    readonly 'longblob:buffer': "longblob";
    readonly date: "varchar";
    readonly 'date:string': "varchar";
    readonly datetime: "varchar";
    readonly 'datetime:string': "varchar";
    readonly time: "varchar";
    readonly timestamp: "varchar";
    readonly 'timestamp:string': "varchar";
    readonly year: "float";
    readonly json: "longtext";
    readonly geometry: "longblob";
    readonly point: "longblob";
    readonly linestring: "longblob";
    readonly polygon: "longblob";
    readonly multipoint: "longblob";
    readonly multilinestring: "longblob";
    readonly multipolygon: "longblob";
    readonly geometrycollection: "longblob";
  };
  readonly double: {
    readonly tinyint: "double";
    readonly smallint: "double";
    readonly mediumint: "double";
    readonly int: "double";
    readonly bigint: "double";
    readonly 'bigint:number': "double";
    readonly 'bigint:string': "double";
    readonly serial: "double";
    readonly decimal: "double";
    readonly 'decimal:number': "double";
    readonly 'decimal:bigint': "double";
    readonly float: "double";
    readonly double: "double";
    readonly real: "double";
    readonly bit: "double";
    readonly boolean: "double";
    readonly char: "char";
    readonly varchar: "varchar";
    readonly tinytext: "text";
    readonly text: "mediumtext";
    readonly mediumtext: "longtext";
    readonly longtext: "longtext";
    readonly enum: "varchar";
    readonly set: "varchar";
    readonly binary: "binary";
    readonly varbinary: "varbinary";
    readonly tinyblob: "tinyblob";
    readonly 'tinyblob:buffer': "tinyblob";
    readonly blob: "blob";
    readonly 'blob:buffer': "blob";
    readonly mediumblob: "mediumblob";
    readonly 'mediumblob:buffer': "mediumblob";
    readonly longblob: "longblob";
    readonly 'longblob:buffer': "longblob";
    readonly date: "varchar";
    readonly 'date:string': "varchar";
    readonly datetime: "varchar";
    readonly 'datetime:string': "varchar";
    readonly time: "varchar";
    readonly timestamp: "varchar";
    readonly 'timestamp:string': "varchar";
    readonly year: "double";
    readonly json: "longtext";
    readonly geometry: "longblob";
    readonly point: "longblob";
    readonly linestring: "longblob";
    readonly polygon: "longblob";
    readonly multipoint: "longblob";
    readonly multilinestring: "longblob";
    readonly multipolygon: "longblob";
    readonly geometrycollection: "longblob";
  };
  readonly real: {
    readonly tinyint: "double";
    readonly smallint: "double";
    readonly mediumint: "double";
    readonly int: "double";
    readonly bigint: "double";
    readonly 'bigint:number': "double";
    readonly 'bigint:string': "double";
    readonly serial: "double";
    readonly decimal: "double";
    readonly 'decimal:number': "double";
    readonly 'decimal:bigint': "double";
    readonly float: "double";
    readonly double: "double";
    readonly real: "double";
    readonly bit: "double";
    readonly boolean: "double";
    readonly char: "char";
    readonly varchar: "varchar";
    readonly tinytext: "text";
    readonly text: "mediumtext";
    readonly mediumtext: "longtext";
    readonly longtext: "longtext";
    readonly enum: "varchar";
    readonly set: "varchar";
    readonly binary: "binary";
    readonly varbinary: "varbinary";
    readonly tinyblob: "tinyblob";
    readonly 'tinyblob:buffer': "tinyblob";
    readonly blob: "blob";
    readonly 'blob:buffer': "blob";
    readonly mediumblob: "mediumblob";
    readonly 'mediumblob:buffer': "mediumblob";
    readonly longblob: "longblob";
    readonly 'longblob:buffer': "longblob";
    readonly date: "varchar";
    readonly 'date:string': "varchar";
    readonly datetime: "varchar";
    readonly 'datetime:string': "varchar";
    readonly time: "varchar";
    readonly timestamp: "varchar";
    readonly 'timestamp:string': "varchar";
    readonly year: "double";
    readonly json: "longtext";
    readonly geometry: "longblob";
    readonly point: "longblob";
    readonly linestring: "longblob";
    readonly polygon: "longblob";
    readonly multipoint: "longblob";
    readonly multilinestring: "longblob";
    readonly multipolygon: "longblob";
    readonly geometrycollection: "longblob";
  };
  readonly bit: {
    readonly tinyint: "decimal";
    readonly smallint: "decimal";
    readonly mediumint: "decimal";
    readonly int: "decimal";
    readonly bigint: "decimal";
    readonly 'bigint:number': "decimal";
    readonly 'bigint:string': "decimal";
    readonly serial: "bigint:string";
    readonly decimal: "decimal";
    readonly 'decimal:number': "decimal";
    readonly 'decimal:bigint': "decimal";
    readonly float: "double";
    readonly double: "double";
    readonly real: "double";
    readonly bit: "bit";
    readonly boolean: "decimal";
    readonly char: "binary";
    readonly varchar: "varbinary";
    readonly tinytext: "blob";
    readonly text: "mediumblob";
    readonly mediumtext: "longblob";
    readonly longtext: "longblob";
    readonly enum: "varbinary";
    readonly set: "varbinary";
    readonly binary: "binary";
    readonly varbinary: "varbinary";
    readonly tinyblob: "tinyblob";
    readonly 'tinyblob:buffer': "tinyblob";
    readonly blob: "blob";
    readonly 'blob:buffer': "blob";
    readonly mediumblob: "mediumblob";
    readonly 'mediumblob:buffer': "mediumblob";
    readonly longblob: "longblob";
    readonly 'longblob:buffer': "longblob";
    readonly date: "varbinary";
    readonly 'date:string': "varbinary";
    readonly datetime: "varbinary";
    readonly 'datetime:string': "varbinary";
    readonly time: "varbinary";
    readonly timestamp: "varbinary";
    readonly 'timestamp:string': "varbinary";
    readonly year: "bigint:string";
    readonly json: "longblob";
    readonly geometry: "longblob";
    readonly point: "longblob";
    readonly linestring: "longblob";
    readonly polygon: "longblob";
    readonly multipoint: "longblob";
    readonly multilinestring: "longblob";
    readonly multipolygon: "longblob";
    readonly geometrycollection: "longblob";
  };
  readonly boolean: {
    readonly tinyint: "tinyint";
    readonly smallint: "smallint";
    readonly mediumint: "mediumint";
    readonly int: "int";
    readonly bigint: "bigint:number";
    readonly 'bigint:number': "bigint:number";
    readonly 'bigint:string': "bigint:number";
    readonly serial: "decimal:number";
    readonly decimal: "decimal:number";
    readonly 'decimal:number': "decimal:number";
    readonly 'decimal:bigint': "decimal:number";
    readonly float: "float";
    readonly double: "double";
    readonly real: "double";
    readonly bit: "decimal:number";
    readonly boolean: "boolean";
    readonly char: "char";
    readonly varchar: "varchar";
    readonly tinytext: "text";
    readonly text: "mediumtext";
    readonly mediumtext: "longtext";
    readonly longtext: "longtext";
    readonly enum: "varchar";
    readonly set: "varchar";
    readonly binary: "binary";
    readonly varbinary: "varbinary";
    readonly tinyblob: "tinyblob";
    readonly 'tinyblob:buffer': "tinyblob";
    readonly blob: "blob";
    readonly 'blob:buffer': "blob";
    readonly mediumblob: "mediumblob";
    readonly 'mediumblob:buffer': "mediumblob";
    readonly longblob: "longblob";
    readonly 'longblob:buffer': "longblob";
    readonly date: "varchar";
    readonly 'date:string': "varchar";
    readonly datetime: "varchar";
    readonly 'datetime:string': "varchar";
    readonly time: "varchar";
    readonly timestamp: "varchar";
    readonly 'timestamp:string': "varchar";
    readonly year: "tinyint";
    readonly json: "longtext";
    readonly geometry: "longblob";
    readonly point: "longblob";
    readonly linestring: "longblob";
    readonly polygon: "longblob";
    readonly multipoint: "longblob";
    readonly multilinestring: "longblob";
    readonly multipolygon: "longblob";
    readonly geometrycollection: "longblob";
  };
  readonly char: {
    readonly tinyint: "char";
    readonly smallint: "char";
    readonly mediumint: "char";
    readonly int: "char";
    readonly bigint: "char";
    readonly 'bigint:number': "char";
    readonly 'bigint:string': "char";
    readonly serial: "char";
    readonly decimal: "char";
    readonly 'decimal:number': "char";
    readonly 'decimal:bigint': "char";
    readonly float: "char";
    readonly double: "char";
    readonly real: "char";
    readonly bit: "binary";
    readonly boolean: "char";
    readonly char: "char";
    readonly varchar: "varchar";
    readonly tinytext: "text";
    readonly text: "mediumtext";
    readonly mediumtext: "longtext";
    readonly longtext: "longtext";
    readonly enum: "char";
    readonly set: "char";
    readonly binary: "binary";
    readonly varbinary: "varbinary";
    readonly tinyblob: "tinyblob";
    readonly 'tinyblob:buffer': "tinyblob";
    readonly blob: "blob";
    readonly 'blob:buffer': "blob";
    readonly mediumblob: "mediumblob";
    readonly 'mediumblob:buffer': "mediumblob";
    readonly longblob: "longblob";
    readonly 'longblob:buffer': "longblob";
    readonly date: "char";
    readonly 'date:string': "char";
    readonly datetime: "char";
    readonly 'datetime:string': "char";
    readonly time: "char";
    readonly timestamp: "char";
    readonly 'timestamp:string': "char";
    readonly year: "char";
    readonly json: "longtext";
    readonly geometry: "longblob";
    readonly point: "longblob";
    readonly linestring: "longblob";
    readonly polygon: "longblob";
    readonly multipoint: "longblob";
    readonly multilinestring: "longblob";
    readonly multipolygon: "longblob";
    readonly geometrycollection: "longblob";
  };
  readonly varchar: {
    readonly tinyint: "varchar";
    readonly smallint: "varchar";
    readonly mediumint: "varchar";
    readonly int: "varchar";
    readonly bigint: "varchar";
    readonly 'bigint:number': "varchar";
    readonly 'bigint:string': "varchar";
    readonly serial: "varchar";
    readonly decimal: "varchar";
    readonly 'decimal:number': "varchar";
    readonly 'decimal:bigint': "varchar";
    readonly float: "varchar";
    readonly double: "varchar";
    readonly real: "varchar";
    readonly bit: "varbinary";
    readonly boolean: "varchar";
    readonly char: "varchar";
    readonly varchar: "varchar";
    readonly tinytext: "text";
    readonly text: "mediumtext";
    readonly mediumtext: "longtext";
    readonly longtext: "longtext";
    readonly enum: "varchar";
    readonly set: "varchar";
    readonly binary: "varbinary";
    readonly varbinary: "varbinary";
    readonly tinyblob: "tinyblob";
    readonly 'tinyblob:buffer': "tinyblob";
    readonly blob: "blob";
    readonly 'blob:buffer': "blob";
    readonly mediumblob: "mediumblob";
    readonly 'mediumblob:buffer': "mediumblob";
    readonly longblob: "longblob";
    readonly 'longblob:buffer': "longblob";
    readonly date: "varchar";
    readonly 'date:string': "varchar";
    readonly datetime: "varchar";
    readonly 'datetime:string': "varchar";
    readonly time: "varchar";
    readonly timestamp: "varchar";
    readonly 'timestamp:string': "varchar";
    readonly year: "varchar";
    readonly json: "longtext";
    readonly geometry: "longblob";
    readonly point: "longblob";
    readonly linestring: "longblob";
    readonly polygon: "longblob";
    readonly multipoint: "longblob";
    readonly multilinestring: "longblob";
    readonly multipolygon: "longblob";
    readonly geometrycollection: "longblob";
  };
  readonly tinytext: {
    readonly tinyint: "text";
    readonly smallint: "text";
    readonly mediumint: "text";
    readonly int: "text";
    readonly bigint: "text";
    readonly 'bigint:number': "text";
    readonly 'bigint:string': "text";
    readonly serial: "text";
    readonly decimal: "text";
    readonly 'decimal:number': "text";
    readonly 'decimal:bigint': "text";
    readonly float: "text";
    readonly double: "text";
    readonly real: "text";
    readonly bit: "blob";
    readonly boolean: "text";
    readonly char: "text";
    readonly varchar: "text";
    readonly tinytext: "text";
    readonly text: "mediumtext";
    readonly mediumtext: "longtext";
    readonly longtext: "longtext";
    readonly enum: "text";
    readonly set: "text";
    readonly binary: "blob";
    readonly varbinary: "blob";
    readonly tinyblob: "blob";
    readonly 'tinyblob:buffer': "blob";
    readonly blob: "blob";
    readonly 'blob:buffer': "blob";
    readonly mediumblob: "mediumblob";
    readonly 'mediumblob:buffer': "mediumblob";
    readonly longblob: "longblob";
    readonly 'longblob:buffer': "longblob";
    readonly date: "text";
    readonly 'date:string': "text";
    readonly datetime: "text";
    readonly 'datetime:string': "text";
    readonly time: "text";
    readonly timestamp: "text";
    readonly 'timestamp:string': "text";
    readonly year: "text";
    readonly json: "longtext";
    readonly geometry: "longblob";
    readonly point: "longblob";
    readonly linestring: "longblob";
    readonly polygon: "longblob";
    readonly multipoint: "longblob";
    readonly multilinestring: "longblob";
    readonly multipolygon: "longblob";
    readonly geometrycollection: "longblob";
  };
  readonly text: {
    readonly tinyint: "mediumtext";
    readonly smallint: "mediumtext";
    readonly mediumint: "mediumtext";
    readonly int: "mediumtext";
    readonly bigint: "mediumtext";
    readonly 'bigint:number': "mediumtext";
    readonly 'bigint:string': "mediumtext";
    readonly serial: "mediumtext";
    readonly decimal: "mediumtext";
    readonly 'decimal:number': "mediumtext";
    readonly 'decimal:bigint': "mediumtext";
    readonly float: "mediumtext";
    readonly double: "mediumtext";
    readonly real: "mediumtext";
    readonly bit: "mediumblob";
    readonly boolean: "mediumtext";
    readonly char: "mediumtext";
    readonly varchar: "mediumtext";
    readonly tinytext: "mediumtext";
    readonly text: "mediumtext";
    readonly mediumtext: "longtext";
    readonly longtext: "longtext";
    readonly enum: "mediumtext";
    readonly set: "mediumtext";
    readonly binary: "mediumblob";
    readonly varbinary: "mediumblob";
    readonly tinyblob: "mediumblob";
    readonly 'tinyblob:buffer': "mediumblob";
    readonly blob: "mediumblob";
    readonly 'blob:buffer': "mediumblob";
    readonly mediumblob: "mediumblob";
    readonly 'mediumblob:buffer': "mediumblob";
    readonly longblob: "longblob";
    readonly 'longblob:buffer': "longblob";
    readonly date: "mediumtext";
    readonly 'date:string': "mediumtext";
    readonly datetime: "mediumtext";
    readonly 'datetime:string': "mediumtext";
    readonly time: "mediumtext";
    readonly timestamp: "mediumtext";
    readonly 'timestamp:string': "mediumtext";
    readonly year: "mediumtext";
    readonly json: "longtext";
    readonly geometry: "longblob";
    readonly point: "longblob";
    readonly linestring: "longblob";
    readonly polygon: "longblob";
    readonly multipoint: "longblob";
    readonly multilinestring: "longblob";
    readonly multipolygon: "longblob";
    readonly geometrycollection: "longblob";
  };
  readonly mediumtext: {
    readonly tinyint: "longtext";
    readonly smallint: "longtext";
    readonly mediumint: "longtext";
    readonly int: "longtext";
    readonly bigint: "longtext";
    readonly 'bigint:number': "longtext";
    readonly 'bigint:string': "longtext";
    readonly serial: "longtext";
    readonly decimal: "longtext";
    readonly 'decimal:number': "longtext";
    readonly 'decimal:bigint': "longtext";
    readonly float: "longtext";
    readonly double: "longtext";
    readonly real: "longtext";
    readonly bit: "longblob";
    readonly boolean: "longtext";
    readonly char: "longtext";
    readonly varchar: "longtext";
    readonly tinytext: "longtext";
    readonly text: "longtext";
    readonly mediumtext: "longtext";
    readonly longtext: "longtext";
    readonly enum: "longtext";
    readonly set: "longtext";
    readonly binary: "longblob";
    readonly varbinary: "longblob";
    readonly tinyblob: "longblob";
    readonly 'tinyblob:buffer': "longblob";
    readonly blob: "longblob";
    readonly 'blob:buffer': "longblob";
    readonly mediumblob: "longblob";
    readonly 'mediumblob:buffer': "longblob";
    readonly longblob: "longblob";
    readonly 'longblob:buffer': "longblob";
    readonly date: "longtext";
    readonly 'date:string': "longtext";
    readonly datetime: "longtext";
    readonly 'datetime:string': "longtext";
    readonly time: "longtext";
    readonly timestamp: "longtext";
    readonly 'timestamp:string': "longtext";
    readonly year: "longtext";
    readonly json: "longtext";
    readonly geometry: "longblob";
    readonly point: "longblob";
    readonly linestring: "longblob";
    readonly polygon: "longblob";
    readonly multipoint: "longblob";
    readonly multilinestring: "longblob";
    readonly multipolygon: "longblob";
    readonly geometrycollection: "longblob";
  };
  readonly longtext: {
    readonly tinyint: "longtext";
    readonly smallint: "longtext";
    readonly mediumint: "longtext";
    readonly int: "longtext";
    readonly bigint: "longtext";
    readonly 'bigint:number': "longtext";
    readonly 'bigint:string': "longtext";
    readonly serial: "longtext";
    readonly decimal: "longtext";
    readonly 'decimal:number': "longtext";
    readonly 'decimal:bigint': "longtext";
    readonly float: "longtext";
    readonly double: "longtext";
    readonly real: "longtext";
    readonly bit: "longblob";
    readonly boolean: "longtext";
    readonly char: "longtext";
    readonly varchar: "longtext";
    readonly tinytext: "longtext";
    readonly text: "longtext";
    readonly mediumtext: "longtext";
    readonly longtext: "longtext";
    readonly enum: "longtext";
    readonly set: "longtext";
    readonly binary: "longblob";
    readonly varbinary: "longblob";
    readonly tinyblob: "longblob";
    readonly 'tinyblob:buffer': "longblob";
    readonly blob: "longblob";
    readonly 'blob:buffer': "longblob";
    readonly mediumblob: "longblob";
    readonly 'mediumblob:buffer': "longblob";
    readonly longblob: "longblob";
    readonly 'longblob:buffer': "longblob";
    readonly date: "longtext";
    readonly 'date:string': "longtext";
    readonly datetime: "longtext";
    readonly 'datetime:string': "longtext";
    readonly time: "longtext";
    readonly timestamp: "longtext";
    readonly 'timestamp:string': "longtext";
    readonly year: "longtext";
    readonly json: "longtext";
    readonly geometry: "longblob";
    readonly point: "longblob";
    readonly linestring: "longblob";
    readonly polygon: "longblob";
    readonly multipoint: "longblob";
    readonly multilinestring: "longblob";
    readonly multipolygon: "longblob";
    readonly geometrycollection: "longblob";
  };
  readonly enum: {
    readonly tinyint: "varchar";
    readonly smallint: "varchar";
    readonly mediumint: "varchar";
    readonly int: "varchar";
    readonly bigint: "varchar";
    readonly 'bigint:number': "varchar";
    readonly 'bigint:string': "varchar";
    readonly serial: "varchar";
    readonly decimal: "varchar";
    readonly 'decimal:number': "varchar";
    readonly 'decimal:bigint': "varchar";
    readonly float: "varchar";
    readonly double: "varchar";
    readonly real: "varchar";
    readonly bit: "varbinary";
    readonly boolean: "varchar";
    readonly char: "char";
    readonly varchar: "varchar";
    readonly tinytext: "text";
    readonly text: "mediumtext";
    readonly mediumtext: "longtext";
    readonly longtext: "longtext";
    readonly enum: "varchar";
    readonly set: "varchar";
    readonly binary: "binary";
    readonly varbinary: "varbinary";
    readonly tinyblob: "tinyblob";
    readonly 'tinyblob:buffer': "tinyblob";
    readonly blob: "blob";
    readonly 'blob:buffer': "blob";
    readonly mediumblob: "mediumblob";
    readonly 'mediumblob:buffer': "mediumblob";
    readonly longblob: "longblob";
    readonly 'longblob:buffer': "longblob";
    readonly date: "varchar";
    readonly 'date:string': "varchar";
    readonly datetime: "varchar";
    readonly 'datetime:string': "varchar";
    readonly time: "varchar";
    readonly timestamp: "varchar";
    readonly 'timestamp:string': "varchar";
    readonly year: "varchar";
    readonly json: "longtext";
    readonly geometry: "longblob";
    readonly point: "longblob";
    readonly linestring: "longblob";
    readonly polygon: "longblob";
    readonly multipoint: "longblob";
    readonly multilinestring: "longblob";
    readonly multipolygon: "longblob";
    readonly geometrycollection: "longblob";
  };
  readonly set: {
    readonly tinyint: "varchar";
    readonly smallint: "varchar";
    readonly mediumint: "varchar";
    readonly int: "varchar";
    readonly bigint: "varchar";
    readonly 'bigint:number': "varchar";
    readonly 'bigint:string': "varchar";
    readonly serial: "varchar";
    readonly decimal: "varchar";
    readonly 'decimal:number': "varchar";
    readonly 'decimal:bigint': "varchar";
    readonly float: "varchar";
    readonly double: "varchar";
    readonly real: "varchar";
    readonly bit: "varbinary";
    readonly boolean: "varchar";
    readonly char: "char";
    readonly varchar: "varchar";
    readonly tinytext: "text";
    readonly text: "mediumtext";
    readonly mediumtext: "longtext";
    readonly longtext: "longtext";
    readonly enum: "varchar";
    readonly set: "varchar";
    readonly binary: "binary";
    readonly varbinary: "varbinary";
    readonly tinyblob: "tinyblob";
    readonly 'tinyblob:buffer': "tinyblob";
    readonly blob: "blob";
    readonly 'blob:buffer': "blob";
    readonly mediumblob: "mediumblob";
    readonly 'mediumblob:buffer': "mediumblob";
    readonly longblob: "longblob";
    readonly 'longblob:buffer': "longblob";
    readonly date: "varchar";
    readonly 'date:string': "varchar";
    readonly datetime: "varchar";
    readonly 'datetime:string': "varchar";
    readonly time: "varchar";
    readonly timestamp: "varchar";
    readonly 'timestamp:string': "varchar";
    readonly year: "varchar";
    readonly json: "longtext";
    readonly geometry: "longblob";
    readonly point: "longblob";
    readonly linestring: "longblob";
    readonly polygon: "longblob";
    readonly multipoint: "longblob";
    readonly multilinestring: "longblob";
    readonly multipolygon: "longblob";
    readonly geometrycollection: "longblob";
  };
  readonly binary: {
    readonly tinyint: "binary";
    readonly smallint: "binary";
    readonly mediumint: "binary";
    readonly int: "binary";
    readonly bigint: "binary";
    readonly 'bigint:number': "binary";
    readonly 'bigint:string': "binary";
    readonly serial: "binary";
    readonly decimal: "binary";
    readonly 'decimal:number': "binary";
    readonly 'decimal:bigint': "binary";
    readonly float: "binary";
    readonly double: "binary";
    readonly real: "binary";
    readonly bit: "binary";
    readonly boolean: "binary";
    readonly char: "binary";
    readonly varchar: "varbinary";
    readonly tinytext: "blob";
    readonly text: "mediumblob";
    readonly mediumtext: "longblob";
    readonly longtext: "longblob";
    readonly enum: "binary";
    readonly set: "binary";
    readonly binary: "binary";
    readonly varbinary: "varbinary";
    readonly tinyblob: "tinyblob";
    readonly 'tinyblob:buffer': "tinyblob";
    readonly blob: "blob";
    readonly 'blob:buffer': "blob";
    readonly mediumblob: "mediumblob";
    readonly 'mediumblob:buffer': "mediumblob";
    readonly longblob: "longblob";
    readonly 'longblob:buffer': "longblob";
    readonly date: "binary";
    readonly 'date:string': "binary";
    readonly datetime: "binary";
    readonly 'datetime:string': "binary";
    readonly time: "binary";
    readonly timestamp: "binary";
    readonly 'timestamp:string': "binary";
    readonly year: "binary";
    readonly json: "longblob";
    readonly geometry: "longblob";
    readonly point: "longblob";
    readonly linestring: "longblob";
    readonly polygon: "longblob";
    readonly multipoint: "longblob";
    readonly multilinestring: "longblob";
    readonly multipolygon: "longblob";
    readonly geometrycollection: "longblob";
  };
  readonly varbinary: {
    readonly tinyint: "varbinary";
    readonly smallint: "varbinary";
    readonly mediumint: "varbinary";
    readonly int: "varbinary";
    readonly bigint: "varbinary";
    readonly 'bigint:number': "varbinary";
    readonly 'bigint:string': "varbinary";
    readonly serial: "varbinary";
    readonly decimal: "varbinary";
    readonly 'decimal:number': "varbinary";
    readonly 'decimal:bigint': "varbinary";
    readonly float: "varbinary";
    readonly double: "varbinary";
    readonly real: "varbinary";
    readonly bit: "varbinary";
    readonly boolean: "varbinary";
    readonly char: "varbinary";
    readonly varchar: "varbinary";
    readonly tinytext: "blob";
    readonly text: "mediumblob";
    readonly mediumtext: "longblob";
    readonly longtext: "longblob";
    readonly enum: "varbinary";
    readonly set: "varbinary";
    readonly binary: "varbinary";
    readonly varbinary: "varbinary";
    readonly tinyblob: "tinyblob";
    readonly 'tinyblob:buffer': "tinyblob";
    readonly blob: "blob";
    readonly 'blob:buffer': "blob";
    readonly mediumblob: "mediumblob";
    readonly 'mediumblob:buffer': "mediumblob";
    readonly longblob: "longblob";
    readonly 'longblob:buffer': "longblob";
    readonly date: "varbinary";
    readonly 'date:string': "varbinary";
    readonly datetime: "varbinary";
    readonly 'datetime:string': "varbinary";
    readonly time: "varbinary";
    readonly timestamp: "varbinary";
    readonly 'timestamp:string': "varbinary";
    readonly year: "varbinary";
    readonly json: "longblob";
    readonly geometry: "longblob";
    readonly point: "longblob";
    readonly linestring: "longblob";
    readonly polygon: "longblob";
    readonly multipoint: "longblob";
    readonly multilinestring: "longblob";
    readonly multipolygon: "longblob";
    readonly geometrycollection: "longblob";
  };
  readonly tinyblob: {
    readonly tinyint: "tinyblob";
    readonly smallint: "tinyblob";
    readonly mediumint: "tinyblob";
    readonly int: "tinyblob";
    readonly bigint: "tinyblob";
    readonly 'bigint:number': "tinyblob";
    readonly 'bigint:string': "tinyblob";
    readonly serial: "tinyblob";
    readonly decimal: "tinyblob";
    readonly 'decimal:number': "tinyblob";
    readonly 'decimal:bigint': "tinyblob";
    readonly float: "tinyblob";
    readonly double: "tinyblob";
    readonly real: "tinyblob";
    readonly bit: "tinyblob";
    readonly boolean: "tinyblob";
    readonly char: "tinyblob";
    readonly varchar: "tinyblob";
    readonly tinytext: "blob";
    readonly text: "mediumblob";
    readonly mediumtext: "longblob";
    readonly longtext: "longblob";
    readonly enum: "tinyblob";
    readonly set: "tinyblob";
    readonly binary: "tinyblob";
    readonly varbinary: "tinyblob";
    readonly tinyblob: "tinyblob";
    readonly 'tinyblob:buffer': "tinyblob";
    readonly blob: "blob";
    readonly 'blob:buffer': "blob";
    readonly mediumblob: "mediumblob";
    readonly 'mediumblob:buffer': "mediumblob";
    readonly longblob: "longblob";
    readonly 'longblob:buffer': "longblob";
    readonly date: "tinyblob";
    readonly 'date:string': "tinyblob";
    readonly datetime: "tinyblob";
    readonly 'datetime:string': "tinyblob";
    readonly time: "tinyblob";
    readonly timestamp: "tinyblob";
    readonly 'timestamp:string': "tinyblob";
    readonly year: "tinyblob";
    readonly json: "longblob";
    readonly geometry: "longblob";
    readonly point: "longblob";
    readonly linestring: "longblob";
    readonly polygon: "longblob";
    readonly multipoint: "longblob";
    readonly multilinestring: "longblob";
    readonly multipolygon: "longblob";
    readonly geometrycollection: "longblob";
  };
  readonly 'tinyblob:buffer': {
    readonly tinyint: "tinyblob:buffer";
    readonly smallint: "tinyblob:buffer";
    readonly mediumint: "tinyblob:buffer";
    readonly int: "tinyblob:buffer";
    readonly bigint: "tinyblob:buffer";
    readonly 'bigint:number': "tinyblob:buffer";
    readonly 'bigint:string': "tinyblob:buffer";
    readonly serial: "tinyblob:buffer";
    readonly decimal: "tinyblob:buffer";
    readonly 'decimal:number': "tinyblob:buffer";
    readonly 'decimal:bigint': "tinyblob:buffer";
    readonly float: "tinyblob:buffer";
    readonly double: "tinyblob:buffer";
    readonly real: "tinyblob:buffer";
    readonly bit: "tinyblob:buffer";
    readonly boolean: "tinyblob:buffer";
    readonly char: "tinyblob:buffer";
    readonly varchar: "tinyblob:buffer";
    readonly tinytext: "blob:buffer";
    readonly text: "mediumblob:buffer";
    readonly mediumtext: "longblob:buffer";
    readonly longtext: "longblob:buffer";
    readonly enum: "tinyblob:buffer";
    readonly set: "tinyblob:buffer";
    readonly binary: "tinyblob:buffer";
    readonly varbinary: "tinyblob:buffer";
    readonly tinyblob: "tinyblob:buffer";
    readonly 'tinyblob:buffer': "tinyblob:buffer";
    readonly blob: "blob:buffer";
    readonly 'blob:buffer': "blob:buffer";
    readonly mediumblob: "mediumblob:buffer";
    readonly 'mediumblob:buffer': "mediumblob:buffer";
    readonly longblob: "longblob:buffer";
    readonly 'longblob:buffer': "longblob:buffer";
    readonly date: "tinyblob:buffer";
    readonly 'date:string': "tinyblob:buffer";
    readonly datetime: "tinyblob:buffer";
    readonly 'datetime:string': "tinyblob:buffer";
    readonly time: "tinyblob:buffer";
    readonly timestamp: "tinyblob:buffer";
    readonly 'timestamp:string': "tinyblob:buffer";
    readonly year: "tinyblob:buffer";
    readonly json: "longblob:buffer";
    readonly geometry: "longblob:buffer";
    readonly point: "longblob:buffer";
    readonly linestring: "longblob:buffer";
    readonly polygon: "longblob:buffer";
    readonly multipoint: "longblob:buffer";
    readonly multilinestring: "longblob:buffer";
    readonly multipolygon: "longblob:buffer";
    readonly geometrycollection: "longblob:buffer";
  };
  readonly blob: {
    readonly tinyint: "blob";
    readonly smallint: "blob";
    readonly mediumint: "blob";
    readonly int: "blob";
    readonly bigint: "blob";
    readonly 'bigint:number': "blob";
    readonly 'bigint:string': "blob";
    readonly serial: "blob";
    readonly decimal: "blob";
    readonly 'decimal:number': "blob";
    readonly 'decimal:bigint': "blob";
    readonly float: "blob";
    readonly double: "blob";
    readonly real: "blob";
    readonly bit: "blob";
    readonly boolean: "blob";
    readonly char: "blob";
    readonly varchar: "blob";
    readonly tinytext: "blob";
    readonly text: "mediumblob";
    readonly mediumtext: "longblob";
    readonly longtext: "longblob";
    readonly enum: "blob";
    readonly set: "blob";
    readonly binary: "blob";
    readonly varbinary: "blob";
    readonly tinyblob: "blob";
    readonly 'tinyblob:buffer': "blob";
    readonly blob: "blob";
    readonly 'blob:buffer': "blob";
    readonly mediumblob: "mediumblob";
    readonly 'mediumblob:buffer': "mediumblob";
    readonly longblob: "longblob";
    readonly 'longblob:buffer': "longblob";
    readonly date: "blob";
    readonly 'date:string': "blob";
    readonly datetime: "blob";
    readonly 'datetime:string': "blob";
    readonly time: "blob";
    readonly timestamp: "blob";
    readonly 'timestamp:string': "blob";
    readonly year: "blob";
    readonly json: "longblob";
    readonly geometry: "longblob";
    readonly point: "longblob";
    readonly linestring: "longblob";
    readonly polygon: "longblob";
    readonly multipoint: "longblob";
    readonly multilinestring: "longblob";
    readonly multipolygon: "longblob";
    readonly geometrycollection: "longblob";
  };
  readonly 'blob:buffer': {
    readonly tinyint: "blob:buffer";
    readonly smallint: "blob:buffer";
    readonly mediumint: "blob:buffer";
    readonly int: "blob:buffer";
    readonly bigint: "blob:buffer";
    readonly 'bigint:number': "blob:buffer";
    readonly 'bigint:string': "blob:buffer";
    readonly serial: "blob:buffer";
    readonly decimal: "blob:buffer";
    readonly 'decimal:number': "blob:buffer";
    readonly 'decimal:bigint': "blob:buffer";
    readonly float: "blob:buffer";
    readonly double: "blob:buffer";
    readonly real: "blob:buffer";
    readonly bit: "blob:buffer";
    readonly boolean: "blob:buffer";
    readonly char: "blob:buffer";
    readonly varchar: "blob:buffer";
    readonly tinytext: "blob:buffer";
    readonly text: "mediumblob:buffer";
    readonly mediumtext: "longblob:buffer";
    readonly longtext: "longblob:buffer";
    readonly enum: "blob:buffer";
    readonly set: "blob:buffer";
    readonly binary: "blob:buffer";
    readonly varbinary: "blob:buffer";
    readonly tinyblob: "blob:buffer";
    readonly 'tinyblob:buffer': "blob:buffer";
    readonly blob: "blob:buffer";
    readonly 'blob:buffer': "blob:buffer";
    readonly mediumblob: "mediumblob:buffer";
    readonly 'mediumblob:buffer': "mediumblob:buffer";
    readonly longblob: "longblob:buffer";
    readonly 'longblob:buffer': "longblob:buffer";
    readonly date: "blob:buffer";
    readonly 'date:string': "blob:buffer";
    readonly datetime: "blob:buffer";
    readonly 'datetime:string': "blob:buffer";
    readonly time: "blob:buffer";
    readonly timestamp: "blob:buffer";
    readonly 'timestamp:string': "blob:buffer";
    readonly year: "blob:buffer";
    readonly json: "longblob:buffer";
    readonly geometry: "longblob:buffer";
    readonly point: "longblob:buffer";
    readonly linestring: "longblob:buffer";
    readonly polygon: "longblob:buffer";
    readonly multipoint: "longblob:buffer";
    readonly multilinestring: "longblob:buffer";
    readonly multipolygon: "longblob:buffer";
    readonly geometrycollection: "longblob:buffer";
  };
  readonly mediumblob: {
    readonly tinyint: "mediumblob";
    readonly smallint: "mediumblob";
    readonly mediumint: "mediumblob";
    readonly int: "mediumblob";
    readonly bigint: "mediumblob";
    readonly 'bigint:number': "mediumblob";
    readonly 'bigint:string': "mediumblob";
    readonly serial: "mediumblob";
    readonly decimal: "mediumblob";
    readonly 'decimal:number': "mediumblob";
    readonly 'decimal:bigint': "mediumblob";
    readonly float: "mediumblob";
    readonly double: "mediumblob";
    readonly real: "mediumblob";
    readonly bit: "mediumblob";
    readonly boolean: "mediumblob";
    readonly char: "mediumblob";
    readonly varchar: "mediumblob";
    readonly tinytext: "mediumblob";
    readonly text: "mediumblob";
    readonly mediumtext: "longblob";
    readonly longtext: "longblob";
    readonly enum: "mediumblob";
    readonly set: "mediumblob";
    readonly binary: "mediumblob";
    readonly varbinary: "mediumblob";
    readonly tinyblob: "mediumblob";
    readonly 'tinyblob:buffer': "mediumblob";
    readonly blob: "mediumblob";
    readonly 'blob:buffer': "mediumblob";
    readonly mediumblob: "mediumblob";
    readonly 'mediumblob:buffer': "mediumblob";
    readonly longblob: "longblob";
    readonly 'longblob:buffer': "longblob";
    readonly date: "mediumblob";
    readonly 'date:string': "mediumblob";
    readonly datetime: "mediumblob";
    readonly 'datetime:string': "mediumblob";
    readonly time: "mediumblob";
    readonly timestamp: "mediumblob";
    readonly 'timestamp:string': "mediumblob";
    readonly year: "mediumblob";
    readonly json: "longblob";
    readonly geometry: "longblob";
    readonly point: "longblob";
    readonly linestring: "longblob";
    readonly polygon: "longblob";
    readonly multipoint: "longblob";
    readonly multilinestring: "longblob";
    readonly multipolygon: "longblob";
    readonly geometrycollection: "longblob";
  };
  readonly 'mediumblob:buffer': {
    readonly tinyint: "mediumblob:buffer";
    readonly smallint: "mediumblob:buffer";
    readonly mediumint: "mediumblob:buffer";
    readonly int: "mediumblob:buffer";
    readonly bigint: "mediumblob:buffer";
    readonly 'bigint:number': "mediumblob:buffer";
    readonly 'bigint:string': "mediumblob:buffer";
    readonly serial: "mediumblob:buffer";
    readonly decimal: "mediumblob:buffer";
    readonly 'decimal:number': "mediumblob:buffer";
    readonly 'decimal:bigint': "mediumblob:buffer";
    readonly float: "mediumblob:buffer";
    readonly double: "mediumblob:buffer";
    readonly real: "mediumblob:buffer";
    readonly bit: "mediumblob:buffer";
    readonly boolean: "mediumblob:buffer";
    readonly char: "mediumblob:buffer";
    readonly varchar: "mediumblob:buffer";
    readonly tinytext: "mediumblob:buffer";
    readonly text: "mediumblob:buffer";
    readonly mediumtext: "longblob:buffer";
    readonly longtext: "longblob:buffer";
    readonly enum: "mediumblob:buffer";
    readonly set: "mediumblob:buffer";
    readonly binary: "mediumblob:buffer";
    readonly varbinary: "mediumblob:buffer";
    readonly tinyblob: "mediumblob:buffer";
    readonly 'tinyblob:buffer': "mediumblob:buffer";
    readonly blob: "mediumblob:buffer";
    readonly 'blob:buffer': "mediumblob:buffer";
    readonly mediumblob: "mediumblob:buffer";
    readonly 'mediumblob:buffer': "mediumblob:buffer";
    readonly longblob: "longblob:buffer";
    readonly 'longblob:buffer': "longblob:buffer";
    readonly date: "mediumblob:buffer";
    readonly 'date:string': "mediumblob:buffer";
    readonly datetime: "mediumblob:buffer";
    readonly 'datetime:string': "mediumblob:buffer";
    readonly time: "mediumblob:buffer";
    readonly timestamp: "mediumblob:buffer";
    readonly 'timestamp:string': "mediumblob:buffer";
    readonly year: "mediumblob:buffer";
    readonly json: "longblob:buffer";
    readonly geometry: "longblob:buffer";
    readonly point: "longblob:buffer";
    readonly linestring: "longblob:buffer";
    readonly polygon: "longblob:buffer";
    readonly multipoint: "longblob:buffer";
    readonly multilinestring: "longblob:buffer";
    readonly multipolygon: "longblob:buffer";
    readonly geometrycollection: "longblob:buffer";
  };
  readonly longblob: {
    readonly tinyint: "longblob";
    readonly smallint: "longblob";
    readonly mediumint: "longblob";
    readonly int: "longblob";
    readonly bigint: "longblob";
    readonly 'bigint:number': "longblob";
    readonly 'bigint:string': "longblob";
    readonly serial: "longblob";
    readonly decimal: "longblob";
    readonly 'decimal:number': "longblob";
    readonly 'decimal:bigint': "longblob";
    readonly float: "longblob";
    readonly double: "longblob";
    readonly real: "longblob";
    readonly bit: "longblob";
    readonly boolean: "longblob";
    readonly char: "longblob";
    readonly varchar: "longblob";
    readonly tinytext: "longblob";
    readonly text: "longblob";
    readonly mediumtext: "longblob";
    readonly longtext: "longblob";
    readonly enum: "longblob";
    readonly set: "longblob";
    readonly binary: "longblob";
    readonly varbinary: "longblob";
    readonly tinyblob: "longblob";
    readonly 'tinyblob:buffer': "longblob";
    readonly blob: "longblob";
    readonly 'blob:buffer': "longblob";
    readonly mediumblob: "longblob";
    readonly 'mediumblob:buffer': "longblob";
    readonly longblob: "longblob";
    readonly 'longblob:buffer': "longblob";
    readonly date: "longblob";
    readonly 'date:string': "longblob";
    readonly datetime: "longblob";
    readonly 'datetime:string': "longblob";
    readonly time: "longblob";
    readonly timestamp: "longblob";
    readonly 'timestamp:string': "longblob";
    readonly year: "longblob";
    readonly json: "longblob";
    readonly geometry: "longblob";
    readonly point: "longblob";
    readonly linestring: "longblob";
    readonly polygon: "longblob";
    readonly multipoint: "longblob";
    readonly multilinestring: "longblob";
    readonly multipolygon: "longblob";
    readonly geometrycollection: "longblob";
  };
  readonly 'longblob:buffer': {
    readonly tinyint: "longblob:buffer";
    readonly smallint: "longblob:buffer";
    readonly mediumint: "longblob:buffer";
    readonly int: "longblob:buffer";
    readonly bigint: "longblob:buffer";
    readonly 'bigint:number': "longblob:buffer";
    readonly 'bigint:string': "longblob:buffer";
    readonly serial: "longblob:buffer";
    readonly decimal: "longblob:buffer";
    readonly 'decimal:number': "longblob:buffer";
    readonly 'decimal:bigint': "longblob:buffer";
    readonly float: "longblob:buffer";
    readonly double: "longblob:buffer";
    readonly real: "longblob:buffer";
    readonly bit: "longblob:buffer";
    readonly boolean: "longblob:buffer";
    readonly char: "longblob:buffer";
    readonly varchar: "longblob:buffer";
    readonly tinytext: "longblob:buffer";
    readonly text: "longblob:buffer";
    readonly mediumtext: "longblob:buffer";
    readonly longtext: "longblob:buffer";
    readonly enum: "longblob:buffer";
    readonly set: "longblob:buffer";
    readonly binary: "longblob:buffer";
    readonly varbinary: "longblob:buffer";
    readonly tinyblob: "longblob:buffer";
    readonly 'tinyblob:buffer': "longblob:buffer";
    readonly blob: "longblob:buffer";
    readonly 'blob:buffer': "longblob:buffer";
    readonly mediumblob: "longblob:buffer";
    readonly 'mediumblob:buffer': "longblob:buffer";
    readonly longblob: "longblob:buffer";
    readonly 'longblob:buffer': "longblob:buffer";
    readonly date: "longblob:buffer";
    readonly 'date:string': "longblob:buffer";
    readonly datetime: "longblob:buffer";
    readonly 'datetime:string': "longblob:buffer";
    readonly time: "longblob:buffer";
    readonly timestamp: "longblob:buffer";
    readonly 'timestamp:string': "longblob:buffer";
    readonly year: "longblob:buffer";
    readonly json: "longblob:buffer";
    readonly geometry: "longblob:buffer";
    readonly point: "longblob:buffer";
    readonly linestring: "longblob:buffer";
    readonly polygon: "longblob:buffer";
    readonly multipoint: "longblob:buffer";
    readonly multilinestring: "longblob:buffer";
    readonly multipolygon: "longblob:buffer";
    readonly geometrycollection: "longblob:buffer";
  };
  readonly date: {
    readonly tinyint: "varchar";
    readonly smallint: "varchar";
    readonly mediumint: "varchar";
    readonly int: "varchar";
    readonly bigint: "varchar";
    readonly 'bigint:number': "varchar";
    readonly 'bigint:string': "varchar";
    readonly serial: "varchar";
    readonly decimal: "varchar";
    readonly 'decimal:number': "varchar";
    readonly 'decimal:bigint': "varchar";
    readonly float: "varchar";
    readonly double: "varchar";
    readonly real: "varchar";
    readonly bit: "varbinary";
    readonly boolean: "varchar";
    readonly char: "char";
    readonly varchar: "varchar";
    readonly tinytext: "text";
    readonly text: "mediumtext";
    readonly mediumtext: "longtext";
    readonly longtext: "longtext";
    readonly enum: "varchar";
    readonly set: "varchar";
    readonly binary: "binary";
    readonly varbinary: "varbinary";
    readonly tinyblob: "tinyblob";
    readonly 'tinyblob:buffer': "tinyblob";
    readonly blob: "blob";
    readonly 'blob:buffer': "blob";
    readonly mediumblob: "mediumblob";
    readonly 'mediumblob:buffer': "mediumblob";
    readonly longblob: "longblob";
    readonly 'longblob:buffer': "longblob";
    readonly date: "date";
    readonly 'date:string': "date";
    readonly datetime: "datetime";
    readonly 'datetime:string': "datetime";
    readonly time: "datetime";
    readonly timestamp: "datetime";
    readonly 'timestamp:string': "datetime";
    readonly year: "varchar";
    readonly json: "longtext";
    readonly geometry: "longblob";
    readonly point: "longblob";
    readonly linestring: "longblob";
    readonly polygon: "longblob";
    readonly multipoint: "longblob";
    readonly multilinestring: "longblob";
    readonly multipolygon: "longblob";
    readonly geometrycollection: "longblob";
  };
  readonly 'date:string': {
    readonly tinyint: "varchar";
    readonly smallint: "varchar";
    readonly mediumint: "varchar";
    readonly int: "varchar";
    readonly bigint: "varchar";
    readonly 'bigint:number': "varchar";
    readonly 'bigint:string': "varchar";
    readonly serial: "varchar";
    readonly decimal: "varchar";
    readonly 'decimal:number': "varchar";
    readonly 'decimal:bigint': "varchar";
    readonly float: "varchar";
    readonly double: "varchar";
    readonly real: "varchar";
    readonly bit: "varbinary";
    readonly boolean: "varchar";
    readonly char: "char";
    readonly varchar: "varchar";
    readonly tinytext: "text";
    readonly text: "mediumtext";
    readonly mediumtext: "longtext";
    readonly longtext: "longtext";
    readonly enum: "varchar";
    readonly set: "varchar";
    readonly binary: "binary";
    readonly varbinary: "varbinary";
    readonly tinyblob: "tinyblob";
    readonly 'tinyblob:buffer': "tinyblob";
    readonly blob: "blob";
    readonly 'blob:buffer': "blob";
    readonly mediumblob: "mediumblob";
    readonly 'mediumblob:buffer': "mediumblob";
    readonly longblob: "longblob";
    readonly 'longblob:buffer': "longblob";
    readonly date: "date:string";
    readonly 'date:string': "date:string";
    readonly datetime: "datetime:string";
    readonly 'datetime:string': "datetime:string";
    readonly time: "datetime:string";
    readonly timestamp: "datetime:string";
    readonly 'timestamp:string': "datetime:string";
    readonly year: "varchar";
    readonly json: "longtext";
    readonly geometry: "longblob";
    readonly point: "longblob";
    readonly linestring: "longblob";
    readonly polygon: "longblob";
    readonly multipoint: "longblob";
    readonly multilinestring: "longblob";
    readonly multipolygon: "longblob";
    readonly geometrycollection: "longblob";
  };
  readonly datetime: {
    readonly tinyint: "varchar";
    readonly smallint: "varchar";
    readonly mediumint: "varchar";
    readonly int: "varchar";
    readonly bigint: "varchar";
    readonly 'bigint:number': "varchar";
    readonly 'bigint:string': "varchar";
    readonly serial: "varchar";
    readonly decimal: "varchar";
    readonly 'decimal:number': "varchar";
    readonly 'decimal:bigint': "varchar";
    readonly float: "varchar";
    readonly double: "varchar";
    readonly real: "varchar";
    readonly bit: "varbinary";
    readonly boolean: "varchar";
    readonly char: "char";
    readonly varchar: "varchar";
    readonly tinytext: "text";
    readonly text: "mediumtext";
    readonly mediumtext: "longtext";
    readonly longtext: "longtext";
    readonly enum: "varchar";
    readonly set: "varchar";
    readonly binary: "binary";
    readonly varbinary: "varbinary";
    readonly tinyblob: "tinyblob";
    readonly 'tinyblob:buffer': "tinyblob";
    readonly blob: "blob";
    readonly 'blob:buffer': "blob";
    readonly mediumblob: "mediumblob";
    readonly 'mediumblob:buffer': "mediumblob";
    readonly longblob: "longblob";
    readonly 'longblob:buffer': "longblob";
    readonly date: "datetime";
    readonly 'date:string': "datetime";
    readonly datetime: "datetime";
    readonly 'datetime:string': "datetime";
    readonly time: "datetime";
    readonly timestamp: "datetime";
    readonly 'timestamp:string': "datetime";
    readonly year: "varchar";
    readonly json: "longtext";
    readonly geometry: "longblob";
    readonly point: "longblob";
    readonly linestring: "longblob";
    readonly polygon: "longblob";
    readonly multipoint: "longblob";
    readonly multilinestring: "longblob";
    readonly multipolygon: "longblob";
    readonly geometrycollection: "longblob";
  };
  readonly 'datetime:string': {
    readonly tinyint: "varchar";
    readonly smallint: "varchar";
    readonly mediumint: "varchar";
    readonly int: "varchar";
    readonly bigint: "varchar";
    readonly 'bigint:number': "varchar";
    readonly 'bigint:string': "varchar";
    readonly serial: "varchar";
    readonly decimal: "varchar";
    readonly 'decimal:number': "varchar";
    readonly 'decimal:bigint': "varchar";
    readonly float: "varchar";
    readonly double: "varchar";
    readonly real: "varchar";
    readonly bit: "varbinary";
    readonly boolean: "varchar";
    readonly char: "char";
    readonly varchar: "varchar";
    readonly tinytext: "text";
    readonly text: "mediumtext";
    readonly mediumtext: "longtext";
    readonly longtext: "longtext";
    readonly enum: "varchar";
    readonly set: "varchar";
    readonly binary: "binary";
    readonly varbinary: "varbinary";
    readonly tinyblob: "tinyblob";
    readonly 'tinyblob:buffer': "tinyblob";
    readonly blob: "blob";
    readonly 'blob:buffer': "blob";
    readonly mediumblob: "mediumblob";
    readonly 'mediumblob:buffer': "mediumblob";
    readonly longblob: "longblob";
    readonly 'longblob:buffer': "longblob";
    readonly date: "datetime:string";
    readonly 'date:string': "datetime:string";
    readonly datetime: "datetime:string";
    readonly 'datetime:string': "datetime:string";
    readonly time: "datetime:string";
    readonly timestamp: "datetime:string";
    readonly 'timestamp:string': "datetime:string";
    readonly year: "varchar";
    readonly json: "longtext";
    readonly geometry: "longblob";
    readonly point: "longblob";
    readonly linestring: "longblob";
    readonly polygon: "longblob";
    readonly multipoint: "longblob";
    readonly multilinestring: "longblob";
    readonly multipolygon: "longblob";
    readonly geometrycollection: "longblob";
  };
  readonly time: {
    readonly tinyint: "varchar";
    readonly smallint: "varchar";
    readonly mediumint: "varchar";
    readonly int: "varchar";
    readonly bigint: "varchar";
    readonly 'bigint:number': "varchar";
    readonly 'bigint:string': "varchar";
    readonly serial: "varchar";
    readonly decimal: "varchar";
    readonly 'decimal:number': "varchar";
    readonly 'decimal:bigint': "varchar";
    readonly float: "varchar";
    readonly double: "varchar";
    readonly real: "varchar";
    readonly bit: "varbinary";
    readonly boolean: "varchar";
    readonly char: "char";
    readonly varchar: "varchar";
    readonly tinytext: "text";
    readonly text: "mediumtext";
    readonly mediumtext: "longtext";
    readonly longtext: "longtext";
    readonly enum: "varchar";
    readonly set: "varchar";
    readonly binary: "binary";
    readonly varbinary: "varbinary";
    readonly tinyblob: "tinyblob";
    readonly 'tinyblob:buffer': "tinyblob";
    readonly blob: "blob";
    readonly 'blob:buffer': "blob";
    readonly mediumblob: "mediumblob";
    readonly 'mediumblob:buffer': "mediumblob";
    readonly longblob: "longblob";
    readonly 'longblob:buffer': "longblob";
    readonly date: "datetime:string";
    readonly 'date:string': "datetime:string";
    readonly datetime: "datetime:string";
    readonly 'datetime:string': "datetime:string";
    readonly time: "time";
    readonly timestamp: "datetime:string";
    readonly 'timestamp:string': "datetime:string";
    readonly year: "varchar";
    readonly json: "longtext";
    readonly geometry: "longblob";
    readonly point: "longblob";
    readonly linestring: "longblob";
    readonly polygon: "longblob";
    readonly multipoint: "longblob";
    readonly multilinestring: "longblob";
    readonly multipolygon: "longblob";
    readonly geometrycollection: "longblob";
  };
  readonly timestamp: {
    readonly tinyint: "varchar";
    readonly smallint: "varchar";
    readonly mediumint: "varchar";
    readonly int: "varchar";
    readonly bigint: "varchar";
    readonly 'bigint:number': "varchar";
    readonly 'bigint:string': "varchar";
    readonly serial: "varchar";
    readonly decimal: "varchar";
    readonly 'decimal:number': "varchar";
    readonly 'decimal:bigint': "varchar";
    readonly float: "varchar";
    readonly double: "varchar";
    readonly real: "varchar";
    readonly bit: "varbinary";
    readonly boolean: "varchar";
    readonly char: "char";
    readonly varchar: "varchar";
    readonly tinytext: "text";
    readonly text: "mediumtext";
    readonly mediumtext: "longtext";
    readonly longtext: "longtext";
    readonly enum: "varchar";
    readonly set: "varchar";
    readonly binary: "binary";
    readonly varbinary: "varbinary";
    readonly tinyblob: "tinyblob";
    readonly 'tinyblob:buffer': "tinyblob";
    readonly blob: "blob";
    readonly 'blob:buffer': "blob";
    readonly mediumblob: "mediumblob";
    readonly 'mediumblob:buffer': "mediumblob";
    readonly longblob: "longblob";
    readonly 'longblob:buffer': "longblob";
    readonly date: "datetime";
    readonly 'date:string': "datetime";
    readonly datetime: "datetime";
    readonly 'datetime:string': "datetime";
    readonly time: "datetime";
    readonly timestamp: "timestamp";
    readonly 'timestamp:string': "timestamp";
    readonly year: "varchar";
    readonly json: "longtext";
    readonly geometry: "longblob";
    readonly point: "longblob";
    readonly linestring: "longblob";
    readonly polygon: "longblob";
    readonly multipoint: "longblob";
    readonly multilinestring: "longblob";
    readonly multipolygon: "longblob";
    readonly geometrycollection: "longblob";
  };
  readonly 'timestamp:string': {
    readonly tinyint: "varchar";
    readonly smallint: "varchar";
    readonly mediumint: "varchar";
    readonly int: "varchar";
    readonly bigint: "varchar";
    readonly 'bigint:number': "varchar";
    readonly 'bigint:string': "varchar";
    readonly serial: "varchar";
    readonly decimal: "varchar";
    readonly 'decimal:number': "varchar";
    readonly 'decimal:bigint': "varchar";
    readonly float: "varchar";
    readonly double: "varchar";
    readonly real: "varchar";
    readonly bit: "varbinary";
    readonly boolean: "varchar";
    readonly char: "char";
    readonly varchar: "varchar";
    readonly tinytext: "text";
    readonly text: "mediumtext";
    readonly mediumtext: "longtext";
    readonly longtext: "longtext";
    readonly enum: "varchar";
    readonly set: "varchar";
    readonly binary: "binary";
    readonly varbinary: "varbinary";
    readonly tinyblob: "tinyblob";
    readonly 'tinyblob:buffer': "tinyblob";
    readonly blob: "blob";
    readonly 'blob:buffer': "blob";
    readonly mediumblob: "mediumblob";
    readonly 'mediumblob:buffer': "mediumblob";
    readonly longblob: "longblob";
    readonly 'longblob:buffer': "longblob";
    readonly date: "datetime:string";
    readonly 'date:string': "datetime:string";
    readonly datetime: "datetime:string";
    readonly 'datetime:string': "datetime:string";
    readonly time: "datetime:string";
    readonly timestamp: "timestamp:string";
    readonly 'timestamp:string': "timestamp:string";
    readonly year: "varchar";
    readonly json: "longtext";
    readonly geometry: "longblob";
    readonly point: "longblob";
    readonly linestring: "longblob";
    readonly polygon: "longblob";
    readonly multipoint: "longblob";
    readonly multilinestring: "longblob";
    readonly multipolygon: "longblob";
    readonly geometrycollection: "longblob";
  };
  readonly year: {
    readonly tinyint: "tinyint";
    readonly smallint: "smallint";
    readonly mediumint: "mediumint";
    readonly int: "int";
    readonly bigint: "bigint:number";
    readonly 'bigint:number': "bigint:number";
    readonly 'bigint:string': "bigint:number";
    readonly serial: "bigint:number";
    readonly decimal: "decimal:number";
    readonly 'decimal:number': "decimal:number";
    readonly 'decimal:bigint': "decimal:number";
    readonly float: "float";
    readonly double: "double";
    readonly real: "double";
    readonly bit: "bigint:number";
    readonly boolean: "tinyint";
    readonly char: "char";
    readonly varchar: "varchar";
    readonly tinytext: "text";
    readonly text: "mediumtext";
    readonly mediumtext: "longtext";
    readonly longtext: "longtext";
    readonly enum: "varchar";
    readonly set: "varchar";
    readonly binary: "binary";
    readonly varbinary: "varbinary";
    readonly tinyblob: "tinyblob";
    readonly 'tinyblob:buffer': "tinyblob";
    readonly blob: "blob";
    readonly 'blob:buffer': "blob";
    readonly mediumblob: "mediumblob";
    readonly 'mediumblob:buffer': "mediumblob";
    readonly longblob: "longblob";
    readonly 'longblob:buffer': "longblob";
    readonly date: "varchar";
    readonly 'date:string': "varchar";
    readonly datetime: "varchar";
    readonly 'datetime:string': "varchar";
    readonly time: "varchar";
    readonly timestamp: "varchar";
    readonly 'timestamp:string': "varchar";
    readonly year: "year";
    readonly json: "longtext";
    readonly geometry: "longblob";
    readonly point: "longblob";
    readonly linestring: "longblob";
    readonly polygon: "longblob";
    readonly multipoint: "longblob";
    readonly multilinestring: "longblob";
    readonly multipolygon: "longblob";
    readonly geometrycollection: "longblob";
  };
  readonly json: {
    readonly tinyint: "longtext";
    readonly smallint: "longtext";
    readonly mediumint: "longtext";
    readonly int: "longtext";
    readonly bigint: "longtext";
    readonly 'bigint:number': "longtext";
    readonly 'bigint:string': "longtext";
    readonly serial: "longtext";
    readonly decimal: "longtext";
    readonly 'decimal:number': "longtext";
    readonly 'decimal:bigint': "longtext";
    readonly float: "longtext";
    readonly double: "longtext";
    readonly real: "longtext";
    readonly bit: "longblob";
    readonly boolean: "longtext";
    readonly char: "longtext";
    readonly varchar: "longtext";
    readonly tinytext: "longtext";
    readonly text: "longtext";
    readonly mediumtext: "longtext";
    readonly longtext: "longtext";
    readonly enum: "longtext";
    readonly set: "longtext";
    readonly binary: "longblob";
    readonly varbinary: "longblob";
    readonly tinyblob: "longblob";
    readonly 'tinyblob:buffer': "longblob";
    readonly blob: "longblob";
    readonly 'blob:buffer': "longblob";
    readonly mediumblob: "longblob";
    readonly 'mediumblob:buffer': "longblob";
    readonly longblob: "longblob";
    readonly 'longblob:buffer': "longblob";
    readonly date: "longtext";
    readonly 'date:string': "longtext";
    readonly datetime: "longtext";
    readonly 'datetime:string': "longtext";
    readonly time: "longtext";
    readonly timestamp: "longtext";
    readonly 'timestamp:string': "longtext";
    readonly year: "longtext";
    readonly json: "json";
    readonly geometry: "longblob";
    readonly point: "longblob";
    readonly linestring: "longblob";
    readonly polygon: "longblob";
    readonly multipoint: "longblob";
    readonly multilinestring: "longblob";
    readonly multipolygon: "longblob";
    readonly geometrycollection: "longblob";
  };
  readonly geometry: {
    readonly tinyint: "longblob";
    readonly smallint: "longblob";
    readonly mediumint: "longblob";
    readonly int: "longblob";
    readonly bigint: "longblob";
    readonly 'bigint:number': "longblob";
    readonly 'bigint:string': "longblob";
    readonly serial: "longblob";
    readonly decimal: "longblob";
    readonly 'decimal:number': "longblob";
    readonly 'decimal:bigint': "longblob";
    readonly float: "longblob";
    readonly double: "longblob";
    readonly real: "longblob";
    readonly bit: "longblob";
    readonly boolean: "longblob";
    readonly char: "longblob";
    readonly varchar: "longblob";
    readonly tinytext: "longblob";
    readonly text: "longblob";
    readonly mediumtext: "longblob";
    readonly longtext: "longblob";
    readonly enum: "longblob";
    readonly set: "longblob";
    readonly binary: "longblob";
    readonly varbinary: "longblob";
    readonly tinyblob: "longblob";
    readonly 'tinyblob:buffer': "longblob";
    readonly blob: "longblob";
    readonly 'blob:buffer': "longblob";
    readonly mediumblob: "longblob";
    readonly 'mediumblob:buffer': "longblob";
    readonly longblob: "longblob";
    readonly 'longblob:buffer': "longblob";
    readonly date: "longblob";
    readonly 'date:string': "longblob";
    readonly datetime: "longblob";
    readonly 'datetime:string': "longblob";
    readonly time: "longblob";
    readonly timestamp: "longblob";
    readonly 'timestamp:string': "longblob";
    readonly year: "longblob";
    readonly json: "longblob";
    readonly geometry: "geometry";
    readonly point: "geometry";
    readonly linestring: "geometry";
    readonly polygon: "geometry";
    readonly multipoint: "geometry";
    readonly multilinestring: "geometry";
    readonly multipolygon: "geometry";
    readonly geometrycollection: "geometry";
  };
  readonly point: {
    readonly tinyint: "longblob";
    readonly smallint: "longblob";
    readonly mediumint: "longblob";
    readonly int: "longblob";
    readonly bigint: "longblob";
    readonly 'bigint:number': "longblob";
    readonly 'bigint:string': "longblob";
    readonly serial: "longblob";
    readonly decimal: "longblob";
    readonly 'decimal:number': "longblob";
    readonly 'decimal:bigint': "longblob";
    readonly float: "longblob";
    readonly double: "longblob";
    readonly real: "longblob";
    readonly bit: "longblob";
    readonly boolean: "longblob";
    readonly char: "longblob";
    readonly varchar: "longblob";
    readonly tinytext: "longblob";
    readonly text: "longblob";
    readonly mediumtext: "longblob";
    readonly longtext: "longblob";
    readonly enum: "longblob";
    readonly set: "longblob";
    readonly binary: "longblob";
    readonly varbinary: "longblob";
    readonly tinyblob: "longblob";
    readonly 'tinyblob:buffer': "longblob";
    readonly blob: "longblob";
    readonly 'blob:buffer': "longblob";
    readonly mediumblob: "longblob";
    readonly 'mediumblob:buffer': "longblob";
    readonly longblob: "longblob";
    readonly 'longblob:buffer': "longblob";
    readonly date: "longblob";
    readonly 'date:string': "longblob";
    readonly datetime: "longblob";
    readonly 'datetime:string': "longblob";
    readonly time: "longblob";
    readonly timestamp: "longblob";
    readonly 'timestamp:string': "longblob";
    readonly year: "longblob";
    readonly json: "longblob";
    readonly geometry: "geometry";
    readonly point: "point";
    readonly linestring: "geometry";
    readonly polygon: "geometry";
    readonly multipoint: "geometry";
    readonly multilinestring: "geometry";
    readonly multipolygon: "geometry";
    readonly geometrycollection: "geometry";
  };
  readonly linestring: {
    readonly tinyint: "longblob";
    readonly smallint: "longblob";
    readonly mediumint: "longblob";
    readonly int: "longblob";
    readonly bigint: "longblob";
    readonly 'bigint:number': "longblob";
    readonly 'bigint:string': "longblob";
    readonly serial: "longblob";
    readonly decimal: "longblob";
    readonly 'decimal:number': "longblob";
    readonly 'decimal:bigint': "longblob";
    readonly float: "longblob";
    readonly double: "longblob";
    readonly real: "longblob";
    readonly bit: "longblob";
    readonly boolean: "longblob";
    readonly char: "longblob";
    readonly varchar: "longblob";
    readonly tinytext: "longblob";
    readonly text: "longblob";
    readonly mediumtext: "longblob";
    readonly longtext: "longblob";
    readonly enum: "longblob";
    readonly set: "longblob";
    readonly binary: "longblob";
    readonly varbinary: "longblob";
    readonly tinyblob: "longblob";
    readonly 'tinyblob:buffer': "longblob";
    readonly blob: "longblob";
    readonly 'blob:buffer': "longblob";
    readonly mediumblob: "longblob";
    readonly 'mediumblob:buffer': "longblob";
    readonly longblob: "longblob";
    readonly 'longblob:buffer': "longblob";
    readonly date: "longblob";
    readonly 'date:string': "longblob";
    readonly datetime: "longblob";
    readonly 'datetime:string': "longblob";
    readonly time: "longblob";
    readonly timestamp: "longblob";
    readonly 'timestamp:string': "longblob";
    readonly year: "longblob";
    readonly json: "longblob";
    readonly geometry: "geometry";
    readonly point: "geometry";
    readonly linestring: "linestring";
    readonly polygon: "geometry";
    readonly multipoint: "geometry";
    readonly multilinestring: "geometry";
    readonly multipolygon: "geometry";
    readonly geometrycollection: "geometry";
  };
  readonly polygon: {
    readonly tinyint: "longblob";
    readonly smallint: "longblob";
    readonly mediumint: "longblob";
    readonly int: "longblob";
    readonly bigint: "longblob";
    readonly 'bigint:number': "longblob";
    readonly 'bigint:string': "longblob";
    readonly serial: "longblob";
    readonly decimal: "longblob";
    readonly 'decimal:number': "longblob";
    readonly 'decimal:bigint': "longblob";
    readonly float: "longblob";
    readonly double: "longblob";
    readonly real: "longblob";
    readonly bit: "longblob";
    readonly boolean: "longblob";
    readonly char: "longblob";
    readonly varchar: "longblob";
    readonly tinytext: "longblob";
    readonly text: "longblob";
    readonly mediumtext: "longblob";
    readonly longtext: "longblob";
    readonly enum: "longblob";
    readonly set: "longblob";
    readonly binary: "longblob";
    readonly varbinary: "longblob";
    readonly tinyblob: "longblob";
    readonly 'tinyblob:buffer': "longblob";
    readonly blob: "longblob";
    readonly 'blob:buffer': "longblob";
    readonly mediumblob: "longblob";
    readonly 'mediumblob:buffer': "longblob";
    readonly longblob: "longblob";
    readonly 'longblob:buffer': "longblob";
    readonly date: "longblob";
    readonly 'date:string': "longblob";
    readonly datetime: "longblob";
    readonly 'datetime:string': "longblob";
    readonly time: "longblob";
    readonly timestamp: "longblob";
    readonly 'timestamp:string': "longblob";
    readonly year: "longblob";
    readonly json: "longblob";
    readonly geometry: "geometry";
    readonly point: "geometry";
    readonly linestring: "geometry";
    readonly polygon: "polygon";
    readonly multipoint: "geometry";
    readonly multilinestring: "geometry";
    readonly multipolygon: "geometry";
    readonly geometrycollection: "geometry";
  };
  readonly multipoint: {
    readonly tinyint: "longblob";
    readonly smallint: "longblob";
    readonly mediumint: "longblob";
    readonly int: "longblob";
    readonly bigint: "longblob";
    readonly 'bigint:number': "longblob";
    readonly 'bigint:string': "longblob";
    readonly serial: "longblob";
    readonly decimal: "longblob";
    readonly 'decimal:number': "longblob";
    readonly 'decimal:bigint': "longblob";
    readonly float: "longblob";
    readonly double: "longblob";
    readonly real: "longblob";
    readonly bit: "longblob";
    readonly boolean: "longblob";
    readonly char: "longblob";
    readonly varchar: "longblob";
    readonly tinytext: "longblob";
    readonly text: "longblob";
    readonly mediumtext: "longblob";
    readonly longtext: "longblob";
    readonly enum: "longblob";
    readonly set: "longblob";
    readonly binary: "longblob";
    readonly varbinary: "longblob";
    readonly tinyblob: "longblob";
    readonly 'tinyblob:buffer': "longblob";
    readonly blob: "longblob";
    readonly 'blob:buffer': "longblob";
    readonly mediumblob: "longblob";
    readonly 'mediumblob:buffer': "longblob";
    readonly longblob: "longblob";
    readonly 'longblob:buffer': "longblob";
    readonly date: "longblob";
    readonly 'date:string': "longblob";
    readonly datetime: "longblob";
    readonly 'datetime:string': "longblob";
    readonly time: "longblob";
    readonly timestamp: "longblob";
    readonly 'timestamp:string': "longblob";
    readonly year: "longblob";
    readonly json: "longblob";
    readonly geometry: "geometry";
    readonly point: "geometry";
    readonly linestring: "geometry";
    readonly polygon: "geometry";
    readonly multipoint: "multipoint";
    readonly multilinestring: "geometry";
    readonly multipolygon: "geometry";
    readonly geometrycollection: "geometry";
  };
  readonly multilinestring: {
    readonly tinyint: "longblob";
    readonly smallint: "longblob";
    readonly mediumint: "longblob";
    readonly int: "longblob";
    readonly bigint: "longblob";
    readonly 'bigint:number': "longblob";
    readonly 'bigint:string': "longblob";
    readonly serial: "longblob";
    readonly decimal: "longblob";
    readonly 'decimal:number': "longblob";
    readonly 'decimal:bigint': "longblob";
    readonly float: "longblob";
    readonly double: "longblob";
    readonly real: "longblob";
    readonly bit: "longblob";
    readonly boolean: "longblob";
    readonly char: "longblob";
    readonly varchar: "longblob";
    readonly tinytext: "longblob";
    readonly text: "longblob";
    readonly mediumtext: "longblob";
    readonly longtext: "longblob";
    readonly enum: "longblob";
    readonly set: "longblob";
    readonly binary: "longblob";
    readonly varbinary: "longblob";
    readonly tinyblob: "longblob";
    readonly 'tinyblob:buffer': "longblob";
    readonly blob: "longblob";
    readonly 'blob:buffer': "longblob";
    readonly mediumblob: "longblob";
    readonly 'mediumblob:buffer': "longblob";
    readonly longblob: "longblob";
    readonly 'longblob:buffer': "longblob";
    readonly date: "longblob";
    readonly 'date:string': "longblob";
    readonly datetime: "longblob";
    readonly 'datetime:string': "longblob";
    readonly time: "longblob";
    readonly timestamp: "longblob";
    readonly 'timestamp:string': "longblob";
    readonly year: "longblob";
    readonly json: "longblob";
    readonly geometry: "geometry";
    readonly point: "geometry";
    readonly linestring: "geometry";
    readonly polygon: "geometry";
    readonly multipoint: "geometry";
    readonly multilinestring: "multilinestring";
    readonly multipolygon: "geometry";
    readonly geometrycollection: "geometry";
  };
  readonly multipolygon: {
    readonly tinyint: "longblob";
    readonly smallint: "longblob";
    readonly mediumint: "longblob";
    readonly int: "longblob";
    readonly bigint: "longblob";
    readonly 'bigint:number': "longblob";
    readonly 'bigint:string': "longblob";
    readonly serial: "longblob";
    readonly decimal: "longblob";
    readonly 'decimal:number': "longblob";
    readonly 'decimal:bigint': "longblob";
    readonly float: "longblob";
    readonly double: "longblob";
    readonly real: "longblob";
    readonly bit: "longblob";
    readonly boolean: "longblob";
    readonly char: "longblob";
    readonly varchar: "longblob";
    readonly tinytext: "longblob";
    readonly text: "longblob";
    readonly mediumtext: "longblob";
    readonly longtext: "longblob";
    readonly enum: "longblob";
    readonly set: "longblob";
    readonly binary: "longblob";
    readonly varbinary: "longblob";
    readonly tinyblob: "longblob";
    readonly 'tinyblob:buffer': "longblob";
    readonly blob: "longblob";
    readonly 'blob:buffer': "longblob";
    readonly mediumblob: "longblob";
    readonly 'mediumblob:buffer': "longblob";
    readonly longblob: "longblob";
    readonly 'longblob:buffer': "longblob";
    readonly date: "longblob";
    readonly 'date:string': "longblob";
    readonly datetime: "longblob";
    readonly 'datetime:string': "longblob";
    readonly time: "longblob";
    readonly timestamp: "longblob";
    readonly 'timestamp:string': "longblob";
    readonly year: "longblob";
    readonly json: "longblob";
    readonly geometry: "geometry";
    readonly point: "geometry";
    readonly linestring: "geometry";
    readonly polygon: "geometry";
    readonly multipoint: "geometry";
    readonly multilinestring: "geometry";
    readonly multipolygon: "multipolygon";
    readonly geometrycollection: "geometry";
  };
  readonly geometrycollection: {
    readonly tinyint: "longblob";
    readonly smallint: "longblob";
    readonly mediumint: "longblob";
    readonly int: "longblob";
    readonly bigint: "longblob";
    readonly 'bigint:number': "longblob";
    readonly 'bigint:string': "longblob";
    readonly serial: "longblob";
    readonly decimal: "longblob";
    readonly 'decimal:number': "longblob";
    readonly 'decimal:bigint': "longblob";
    readonly float: "longblob";
    readonly double: "longblob";
    readonly real: "longblob";
    readonly bit: "longblob";
    readonly boolean: "longblob";
    readonly char: "longblob";
    readonly varchar: "longblob";
    readonly tinytext: "longblob";
    readonly text: "longblob";
    readonly mediumtext: "longblob";
    readonly longtext: "longblob";
    readonly enum: "longblob";
    readonly set: "longblob";
    readonly binary: "longblob";
    readonly varbinary: "longblob";
    readonly tinyblob: "longblob";
    readonly 'tinyblob:buffer': "longblob";
    readonly blob: "longblob";
    readonly 'blob:buffer': "longblob";
    readonly mediumblob: "longblob";
    readonly 'mediumblob:buffer': "longblob";
    readonly longblob: "longblob";
    readonly 'longblob:buffer': "longblob";
    readonly date: "longblob";
    readonly 'date:string': "longblob";
    readonly datetime: "longblob";
    readonly 'datetime:string': "longblob";
    readonly time: "longblob";
    readonly timestamp: "longblob";
    readonly 'timestamp:string': "longblob";
    readonly year: "longblob";
    readonly json: "longblob";
    readonly geometry: "geometry";
    readonly point: "geometry";
    readonly linestring: "geometry";
    readonly polygon: "geometry";
    readonly multipoint: "geometry";
    readonly multilinestring: "geometry";
    readonly multipolygon: "geometry";
    readonly geometrycollection: "geometrycollection";
  };
};
type MySqlCodecs = Codecs<MySqlType>;
declare const castToText: CastCodec;
/** Recover float32 casted to double
 *
 * Needed to avoid db\driver-side rounding
 */
declare const floatFromDouble: (value: number) => number;
/** Recover float32 casted to double -> string
 *
 * Needed to avoid db\driver-side rounding
 */
declare const floatFromDoubleString: (value: string) => number;
declare const genericMySqlCodecs: {
  readonly boolean: {
    readonly normalizeInJson: BooleanConstructor;
  };
  readonly date: {
    readonly normalizeInJson: (value: string) => Date;
  };
  readonly float: {
    readonly normalizeInJson: (value: string) => number;
  };
  readonly bigint: {
    readonly castInJson: CastCodec;
    readonly normalizeInJson: BigIntConstructor;
  };
  readonly 'bigint:number': {
    readonly castInJson: CastCodec;
    readonly normalizeInJson: NumberConstructor;
  };
  readonly 'bigint:string': {
    readonly castInJson: CastCodec;
  };
  readonly time: {
    readonly castInJson: CastCodec;
  };
  readonly timestamp: {
    readonly castInJson: CastCodec;
    readonly normalizeInJson: (v: string) => Date;
  };
  readonly 'timestamp:string': {
    readonly castInJson: CastCodec;
  };
  readonly datetime: {
    readonly castInJson: CastCodec;
    readonly normalizeInJson: (value: string) => Date;
  };
  readonly 'datetime:string': {
    readonly castInJson: CastCodec;
  };
  readonly decimal: {
    readonly castInJson: CastCodec;
  };
  readonly 'decimal:number': {
    readonly castInJson: CastCodec;
    readonly normalizeInJson: NumberConstructor;
  };
  readonly 'decimal:bigint': {
    readonly castInJson: CastCodec;
    readonly normalizeInJson: BigIntConstructor;
  };
  readonly binary: {
    readonly castInJson: CastCodec;
  };
  readonly varbinary: {
    readonly castInJson: CastCodec;
  };
  readonly tinyblob: {
    readonly castInJson: (name: __sql_sql_ts0.SQLChunk) => __sql_sql_ts0.SQL<unknown>;
    readonly normalizeInJson: typeof atob;
  };
  readonly 'tinyblob:buffer': {
    readonly castInJson: (name: __sql_sql_ts0.SQLChunk) => __sql_sql_ts0.SQL<unknown>;
    readonly normalizeInJson: (value: string) => Buffer<ArrayBuffer>;
  };
  readonly blob: {
    readonly castInJson: (name: __sql_sql_ts0.SQLChunk) => __sql_sql_ts0.SQL<unknown>;
    readonly normalizeInJson: typeof atob;
  };
  readonly 'blob:buffer': {
    readonly castInJson: (name: __sql_sql_ts0.SQLChunk) => __sql_sql_ts0.SQL<unknown>;
    readonly normalizeInJson: (value: string) => Buffer<ArrayBuffer>;
  };
  readonly mediumblob: {
    readonly castInJson: (name: __sql_sql_ts0.SQLChunk) => __sql_sql_ts0.SQL<unknown>;
    readonly normalizeInJson: typeof atob;
  };
  readonly 'mediumblob:buffer': {
    readonly castInJson: (name: __sql_sql_ts0.SQLChunk) => __sql_sql_ts0.SQL<unknown>;
    readonly normalizeInJson: (value: string) => Buffer<ArrayBuffer>;
  };
  readonly longblob: {
    readonly castInJson: (name: __sql_sql_ts0.SQLChunk) => __sql_sql_ts0.SQL<unknown>;
    readonly normalizeInJson: typeof atob;
  };
  readonly 'longblob:buffer': {
    readonly castInJson: (name: __sql_sql_ts0.SQLChunk) => __sql_sql_ts0.SQL<unknown>;
    readonly normalizeInJson: (value: string) => Buffer<ArrayBuffer>;
  };
};
declare const refineGenericMySqlCodecs: (extension?: PartialWithUndefined<MySqlCodecs>) => MySqlCodecs;
//#endregion
export { MySqlAliasType, MySqlCodecs, MySqlColumnType, MySqlType, castToText, floatFromDouble, floatFromDoubleString, genericMySqlCodecs, refineGenericMySqlCodecs, resolveMySqlTypeAlias, unionsTypeTable };
//# sourceMappingURL=codecs.d.cts.map