[{"data":1,"prerenderedAt":1013},["ShallowReactive",2],{"navigation_docs":3,"-drizzle-orm-column-mapping":195,"-drizzle-orm-column-mapping-surround":1008},[4,27,61,75,100,126,147,177],{"title":5,"icon":6,"redirect":7,"path":8,"stem":9,"children":10,"page":26},"Introduction","icon-park-outline:home","\u002Fintroduction\u002Fabout-mion","\u002Fintroduction","1.introduction",[11,14,18,22],{"title":12,"path":7,"stem":13},"About mion","1.introduction\u002F1.about-mion",{"title":15,"path":16,"stem":17},"Quick Start","\u002Fintroduction\u002Fquick-start","1.introduction\u002F2.quick-start",{"title":19,"path":20,"stem":21},"Manual Install","\u002Fintroduction\u002Fmanual-install","1.introduction\u002F3.manual-install",{"title":23,"path":24,"stem":25},"What's Next","\u002Fintroduction\u002Fwhat-is-next","1.introduction\u002F4.what-is-next",false,{"title":28,"icon":29,"path":30,"stem":31,"children":32,"page":26},"Server","icon-park-outline:server","\u002Fserver","20.server",[33,37,41,45,49,53,57],{"title":34,"path":35,"stem":36},"Router Overview","\u002Fserver\u002Foverview","20.server\u002F0.overview",{"title":38,"path":39,"stem":40},"Routes","\u002Fserver\u002Froutes","20.server\u002F1.routes",{"title":42,"path":43,"stem":44},"Middleware","\u002Fserver\u002Fmiddle-fns","20.server\u002F2.middle-fns",{"title":46,"path":47,"stem":48},"Request & Response","\u002Fserver\u002Frequest-and-response","20.server\u002F5.request-and-response",{"title":50,"path":51,"stem":52},"Error Handling","\u002Fserver\u002Ferror-handling","20.server\u002F6.error-handling",{"title":54,"path":55,"stem":56},"Validation","\u002Fserver\u002Fvalidation","20.server\u002F7.validation",{"title":58,"path":59,"stem":60},"Serialization","\u002Fserver\u002Fserialization","20.server\u002F8.serialization",{"title":62,"icon":63,"path":64,"stem":65,"children":66,"page":26},"Drizzle ORM","i-lineicons-drizzle","\u002Fdrizzle-orm","21.drizzle-orm",[67,71],{"title":68,"path":69,"stem":70},"Drizzle Overview","\u002Fdrizzle-orm\u002Fdrizzle-overview","21.drizzle-orm\u002F0.drizzle-overview",{"title":72,"path":73,"stem":74},"Column Mapping","\u002Fdrizzle-orm\u002Fcolumn-mapping","21.drizzle-orm\u002F1.column-mapping",{"title":76,"icon":77,"path":78,"stem":79,"children":80,"page":26},"Client","icon-park-outline:computer","\u002Fclient","3.client",[81,85,88,92,96],{"title":82,"path":83,"stem":84},"Client Overview","\u002Fclient\u002Fclient-overview","3.client\u002F0.client-overview",{"title":50,"path":86,"stem":87},"\u002Fclient\u002Ferror-handling","3.client\u002F1.error-handling",{"title":89,"path":90,"stem":91},"Validation Errors","\u002Fclient\u002Fvalidation-errors","3.client\u002F2.validation-errors",{"title":93,"path":94,"stem":95},"Routes Flow","\u002Fclient\u002Fclient-flow","3.client\u002F3.client-flow",{"title":97,"path":98,"stem":99},"Cancellation & Timeouts","\u002Fclient\u002Fcancellation-timeouts","3.client\u002F4.cancellation-timeouts",{"title":101,"icon":102,"redirect":103,"path":104,"stem":105,"children":106,"page":26},"RunTypes","i-lucide-scan-text","\u002Frun-types\u002Foverview","\u002Frun-types","4.run-types",[107,110,114,118,122],{"title":108,"path":103,"stem":109},"RunTypes Overview","4.run-types\u002F0.overview",{"title":111,"path":112,"stem":113},"Supported Types","\u002Frun-types\u002Ffeatures","4.run-types\u002F1.features",{"title":115,"path":116,"stem":117},"Type Formats","\u002Frun-types\u002Ftype-formats","4.run-types\u002F2.type-formats",{"title":119,"path":120,"stem":121},"Built-in Formats","\u002Frun-types\u002Fbuilt-in-formats","4.run-types\u002F3.built-in-formats",{"title":123,"path":124,"stem":125},"Caveats","\u002Frun-types\u002Fcaveats","4.run-types\u002F4.caveats",{"title":127,"path":128,"stem":129,"children":130,"page":26},"Devtools","\u002Fdevtools","5.devtools",[131,135,139,143],{"title":132,"path":133,"stem":134},"AOT Compilation","\u002Fdevtools\u002Faot-compilation","5.devtools\u002F0.aot-compilation",{"title":136,"path":137,"stem":138},"Pure Functions","\u002Fdevtools\u002Fpure-functions","5.devtools\u002F1.pure-functions",{"title":140,"path":141,"stem":142},"ESLint Rules","\u002Fdevtools\u002Feslint-rules","5.devtools\u002F2.eslint-rules",{"title":144,"path":145,"stem":146},"Vite Configuration","\u002Fdevtools\u002Fvite-config","5.devtools\u002F3.vite-config",{"title":148,"redirect":149,"icon":150,"path":151,"stem":152,"children":153,"page":26},"Platforms","\u002Fplatforms\u002Fnode-js","icon-park-outline:play","\u002Fplatforms","6.platforms",[154,157,161,165,169,173],{"title":155,"path":149,"stem":156},"Node.js","6.platforms\u002F1.node-js",{"title":158,"path":159,"stem":160},"Bun","\u002Fplatforms\u002Fbun","6.platforms\u002F2.bun",{"title":162,"path":163,"stem":164},"AWS Lambda","\u002Fplatforms\u002Faws-lambda","6.platforms\u002F3.aws-lambda",{"title":166,"path":167,"stem":168},"Google Cloud Functions","\u002Fplatforms\u002Fgoogle-cloud-functions","6.platforms\u002F4.google-cloud-functions",{"title":170,"path":171,"stem":172},"Cloudflare Workers","\u002Fplatforms\u002Fcloudflare","6.platforms\u002F5.cloudflare",{"title":174,"path":175,"stem":176},"Vercel","\u002Fplatforms\u002Fvercel","6.platforms\u002F6.vercel",{"title":178,"icon":179,"redirect":180,"path":181,"stem":182,"children":183,"page":26},"Benchmarks","icon-park-outline:chart-line","\u002Fbenchmarks\u002Fhello-world","\u002Fbenchmarks","7.benchmarks",[184,187,191],{"title":185,"path":180,"stem":186},"Hello World","7.benchmarks\u002F1.hello-world",{"title":188,"path":189,"stem":190},"Light Validation","\u002Fbenchmarks\u002Flight-validation","7.benchmarks\u002F2.light-validation",{"title":192,"path":193,"stem":194},"Heavy Validation","\u002Fbenchmarks\u002Fheavy-validation","7.benchmarks\u002F3.heavy-validation",{"id":196,"title":72,"body":197,"description":1001,"extension":1002,"links":1003,"meta":1004,"navigation":1005,"path":73,"seo":1006,"stem":74,"__hash__":1007},"docs\u002F21.drizzle-orm\u002F1.column-mapping.md",{"type":198,"value":199},"minimark",[200,221,236,241,372,376,583,595,599,610,894,899,903,938,942],[201,202,203,204,208,209,212,213,216,217,220],"p",{},"The ",[205,206,207],"code",{},"@mionjs\u002Fdrizzle"," package automatically maps TypeScript types to appropriate Drizzle ORM column definitions. This mapping is database-aware, using native column types where available (e.g., PostgreSQL's ",[205,210,211],{},"uuid()"," and ",[205,214,215],{},"inet()",") and falling back to compatible alternatives for databases with fewer native types (e.g., SQLite uses ",[205,218,219],{},"text()"," for most string formats).",[201,222,223,224,227,228,231,232,235],{},"Type formats from ",[205,225,226],{},"@mionjs\u002Ftype-formats"," provide additional semantic information that enables more precise column mapping. For example, ",[205,229,230],{},"FormatInteger"," maps to an integer column rather than a floating-point column, and ",[205,233,234],{},"FormatEmail"," uses the appropriate varchar length for email addresses.",[237,238,240],"h2",{"id":239},"primitive-types","Primitive Types",[242,243,244,263],"table",{},[245,246,247],"thead",{},[248,249,250,254,257,260],"tr",{},[251,252,253],"th",{},"TypeScript Type",[251,255,256],{},"PostgreSQL",[251,258,259],{},"MySQL",[251,261,262],{},"SQLite",[264,265,266,287,309,330,351],"tbody",{},[248,267,268,274,279,283],{},[269,270,271],"td",{},[205,272,273],{},"string",[269,275,276],{},[205,277,278],{},"varchar(255)",[269,280,281],{},[205,282,278],{},[269,284,285],{},[205,286,219],{},[248,288,289,294,299,304],{},[269,290,291],{},[205,292,293],{},"number",[269,295,296],{},[205,297,298],{},"doublePrecision()",[269,300,301],{},[205,302,303],{},"double()",[269,305,306],{},[205,307,308],{},"real()",[248,310,311,316,321,325],{},[269,312,313],{},[205,314,315],{},"boolean",[269,317,318],{},[205,319,320],{},"boolean()",[269,322,323],{},[205,324,320],{},[269,326,327],{},[205,328,329],{},"integer({mode: 'boolean'})",[248,331,332,337,342,346],{},[269,333,334],{},[205,335,336],{},"bigint",[269,338,339],{},[205,340,341],{},"bigint({mode: 'bigint'})",[269,343,344],{},[205,345,341],{},[269,347,348],{},[205,349,350],{},"blob({mode: 'bigint'})",[248,352,353,358,363,367],{},[269,354,355],{},[205,356,357],{},"Date",[269,359,360],{},[205,361,362],{},"timestamp()",[269,364,365],{},[205,366,362],{},[269,368,369],{},[205,370,371],{},"integer({mode: 'timestamp'})",[237,373,375],{"id":374},"string-format-types","String Format Types",[242,377,378,391],{},[245,379,380],{},[248,381,382,385,387,389],{},[251,383,384],{},"Format Type",[251,386,256],{},[251,388,259],{},[251,390,262],{},[264,392,393,417,436,456,476,502,522,542,562],{},[248,394,395,404,408,413],{},[269,396,397,400,401],{},[205,398,399],{},"FormatUUID"," \u002F ",[205,402,403],{},"FormatUUIDv7",[269,405,406],{},[205,407,211],{},[269,409,410],{},[205,411,412],{},"varchar(36)",[269,414,415],{},[205,416,219],{},[248,418,419,423,428,432],{},[269,420,421],{},[205,422,234],{},[269,424,425],{},[205,426,427],{},"varchar(254)",[269,429,430],{},[205,431,427],{},[269,433,434],{},[205,435,219],{},[248,437,438,443,448,452],{},[269,439,440],{},[205,441,442],{},"StrURL",[269,444,445],{},[205,446,447],{},"varchar(2048)",[269,449,450],{},[205,451,447],{},[269,453,454],{},[205,455,219],{},[248,457,458,463,468,472],{},[269,459,460],{},[205,461,462],{},"FormatDomain",[269,464,465],{},[205,466,467],{},"varchar(253)",[269,469,470],{},[205,471,467],{},[269,473,474],{},[205,475,219],{},[248,477,478,489,493,498],{},[269,479,480,400,483,400,486],{},[205,481,482],{},"FormatIP",[205,484,485],{},"FormatIPv4",[205,487,488],{},"FormatIPv6",[269,490,491],{},[205,492,215],{},[269,494,495],{},[205,496,497],{},"varchar(45)",[269,499,500],{},[205,501,219],{},[248,503,504,509,513,518],{},[269,505,506],{},[205,507,508],{},"FormatStringDateTime",[269,510,511],{},[205,512,362],{},[269,514,515],{},[205,516,517],{},"datetime()",[269,519,520],{},[205,521,219],{},[248,523,524,529,534,538],{},[269,525,526],{},[205,527,528],{},"FormatStringDate",[269,530,531],{},[205,532,533],{},"date()",[269,535,536],{},[205,537,533],{},[269,539,540],{},[205,541,219],{},[248,543,544,549,554,558],{},[269,545,546],{},[205,547,548],{},"FormatStringTime",[269,550,551],{},[205,552,553],{},"time()",[269,555,556],{},[205,557,553],{},[269,559,560],{},[205,561,219],{},[248,563,564,570,575,579],{},[269,565,566,569],{},[205,567,568],{},"FormatString"," (with maxLength)",[269,571,572],{},[205,573,574],{},"varchar(maxLength * buffer)",[269,576,577],{},[205,578,574],{},[269,580,581],{},[205,582,219],{},[201,584,585,586,588,589,591,592,594],{},"Well-known formats like ",[205,587,234],{},", ",[205,590,442],{},", and ",[205,593,462],{}," use their standard maximum lengths without any buffer applied.",[237,596,598],{"id":597},"number-format-types","Number Format Types",[201,600,601,602,605,606,609],{},"All number formats with the ",[205,603,604],{},"integer: true"," parameter map to integer columns, while formats with ",[205,607,608],{},"float: true"," or no integer constraint map to floating-point columns.",[242,611,612,627],{},[245,613,614],{},[248,615,616,618,621,623,625],{},[251,617,384],{},[251,619,620],{},"Description",[251,622,256],{},[251,624,259],{},[251,626,262],{},[264,628,629,652,674,696,718,740,762,784,806,828,850,872],{},[248,630,631,635,638,643,648],{},[269,632,633],{},[205,634,230],{},[269,636,637],{},"Generic integer",[269,639,640],{},[205,641,642],{},"integer()",[269,644,645],{},[205,646,647],{},"int()",[269,649,650],{},[205,651,642],{},[248,653,654,659,662,666,670],{},[269,655,656],{},[205,657,658],{},"FormatFloat",[269,660,661],{},"Generic float",[269,663,664],{},[205,665,298],{},[269,667,668],{},[205,669,303],{},[269,671,672],{},[205,673,308],{},[248,675,676,681,684,688,692],{},[269,677,678],{},[205,679,680],{},"FormatPositive",[269,682,683],{},"Number >= 0",[269,685,686],{},[205,687,298],{},[269,689,690],{},[205,691,303],{},[269,693,694],{},[205,695,308],{},[248,697,698,703,706,710,714],{},[269,699,700],{},[205,701,702],{},"FormatNegative",[269,704,705],{},"Number \u003C= 0",[269,707,708],{},[205,709,298],{},[269,711,712],{},[205,713,303],{},[269,715,716],{},[205,717,308],{},[248,719,720,725,728,732,736],{},[269,721,722],{},[205,723,724],{},"FormatPositiveInt",[269,726,727],{},"Integer >= 0",[269,729,730],{},[205,731,642],{},[269,733,734],{},[205,735,647],{},[269,737,738],{},[205,739,642],{},[248,741,742,747,750,754,758],{},[269,743,744],{},[205,745,746],{},"FormatNegativeInt",[269,748,749],{},"Integer \u003C= 0",[269,751,752],{},[205,753,642],{},[269,755,756],{},[205,757,647],{},[269,759,760],{},[205,761,642],{},[248,763,764,769,772,776,780],{},[269,765,766],{},[205,767,768],{},"FormatInt8",[269,770,771],{},"8-bit signed (-128 to 127)",[269,773,774],{},[205,775,642],{},[269,777,778],{},[205,779,647],{},[269,781,782],{},[205,783,642],{},[248,785,786,791,794,798,802],{},[269,787,788],{},[205,789,790],{},"FormatInt16",[269,792,793],{},"16-bit signed (-32768 to 32767)",[269,795,796],{},[205,797,642],{},[269,799,800],{},[205,801,647],{},[269,803,804],{},[205,805,642],{},[248,807,808,813,816,820,824],{},[269,809,810],{},[205,811,812],{},"FormatInt32",[269,814,815],{},"32-bit signed",[269,817,818],{},[205,819,642],{},[269,821,822],{},[205,823,647],{},[269,825,826],{},[205,827,642],{},[248,829,830,835,838,842,846],{},[269,831,832],{},[205,833,834],{},"FormatUInt8",[269,836,837],{},"8-bit unsigned (0 to 255)",[269,839,840],{},[205,841,642],{},[269,843,844],{},[205,845,647],{},[269,847,848],{},[205,849,642],{},[248,851,852,857,860,864,868],{},[269,853,854],{},[205,855,856],{},"FormatUInt16",[269,858,859],{},"16-bit unsigned (0 to 65535)",[269,861,862],{},[205,863,642],{},[269,865,866],{},[205,867,647],{},[269,869,870],{},[205,871,642],{},[248,873,874,879,882,886,890],{},[269,875,876],{},[205,877,878],{},"FormatUInt32",[269,880,881],{},"32-bit unsigned (0 to 4294967295)",[269,883,884],{},[205,885,642],{},[269,887,888],{},[205,889,647],{},[269,891,892],{},[205,893,642],{},[895,896,898],"callout",{"type":897},"info","While the database column type is the same for all integer formats, the type constraints (min\u002Fmax values) are still validated at runtime by mion's type system.",[237,900,902],{"id":901},"bigint-format-types","BigInt Format Types",[242,904,905,917],{},[245,906,907],{},[248,908,909,911,913,915],{},[251,910,384],{},[251,912,256],{},[251,914,259],{},[251,916,262],{},[264,918,919],{},[248,920,921,926,930,934],{},[269,922,923],{},[205,924,925],{},"FormatBigInt",[269,927,928],{},[205,929,341],{},[269,931,932],{},[205,933,341],{},[269,935,936],{},[205,937,350],{},[237,939,941],{"id":940},"complex-types","Complex Types",[242,943,944,956],{},[245,945,946],{},[248,947,948,950,952,954],{},[251,949,253],{},[251,951,256],{},[251,953,259],{},[251,955,262],{},[264,957,958,981],{},[248,959,960,966,971,976],{},[269,961,962,965],{},[205,963,964],{},"T[]"," (array)",[269,967,968],{},[205,969,970],{},"jsonb()",[269,972,973],{},[205,974,975],{},"json()",[269,977,978],{},[205,979,980],{},"text({mode: 'json'})",[248,982,983,989,993,997],{},[269,984,985,988],{},[205,986,987],{},"{...}"," (object)",[269,990,991],{},[205,992,970],{},[269,994,995],{},[205,996,975],{},[269,998,999],{},[205,1000,980],{},"How types are mapped to database columns when using mion Drizzle ORM package.","md",null,{"toc":26},true,{"title":72,"description":1001},"V6NXWE3tiozNpFqwYo95qHAs8EY-gsp6uBh6ncteLWI",[1009,1011],{"title":68,"path":69,"stem":70,"description":1010,"children":-1},"Auto-generate Drizzle ORM table schemas from TypeScript types and mion Type Formats.",{"title":82,"path":83,"stem":84,"description":1012,"children":-1},"Learn how to use the mion client for type-safe API calls.",1778674527878]