[{"data":1,"prerenderedAt":77},["ShallowReactive",2],{"term-t\u002Ftype-gymnastics":3,"related-t\u002Ftype-gymnastics":64},{"id":4,"title":5,"acronym":6,"body":7,"category":45,"description":46,"difficulty":47,"extension":48,"letter":49,"meta":50,"navigation":51,"path":52,"related":53,"seo":58,"sitemap":59,"stem":62,"subcategory":6,"__hash__":63},"terms\u002Fterms\u002Ft\u002Ftype-gymnastics.md","Type Gymnastics",null,{"type":8,"value":9,"toc":38},"minimark",[10,15,19,23,26,30],[11,12,14],"h2",{"id":13},"eli5-the-vibe-check","ELI5 — The Vibe Check",[16,17,18],"p",{},"Type gymnastics is contorting TypeScript's type system to do things it wasn't really designed for. Five levels of conditional types to infer a string literal. It's fun, it's impressive, and it's unmaintainable.",[11,20,22],{"id":21},"real-talk","Real Talk",[16,24,25],{},"Type gymnastics refers to advanced type-level programming in TypeScript (or similar languages) that pushes the type system to its expressive limits. While valuable in library code for strong APIs, in application code it frequently indicates over-engineering. Common patterns: deep template literal manipulation, recursive conditional types, and type inference chains.",[11,27,29],{"id":28},"when-youll-hear-this","When You'll Hear This",[16,31,32,33,37],{},"\"Stop the type gymnastics — just use ",[34,35,36],"code",{},"as"," here.\" \u002F \"Libraries need type gymnastics. Your app doesn't.\"",{"title":39,"searchDepth":40,"depth":40,"links":41},"",2,[42,43,44],{"id":13,"depth":40,"text":14},{"id":21,"depth":40,"text":22},{"id":28,"depth":40,"text":29},"languages","Type gymnastics is contorting TypeScript's type system to do things it wasn't really designed for.","advanced","md","t",{},true,"\u002Fterms\u002Ft\u002Ftype-gymnastics",[54,55,56,57],"TypeScript","Type Theater","Template Literal Type","Advanced Types",{"title":5,"description":46},{"changefreq":60,"priority":61},"weekly",0.7,"terms\u002Ft\u002Ftype-gymnastics","x5cJvZzTu9-oSAFN23IYhix_tzxLR01s92z3mQ9lylI",[65,69,73],{"title":56,"path":66,"acronym":6,"category":67,"difficulty":47,"description":68},"\u002Fterms\u002Ft\u002Ftemplate-literal-type","general","Template literal types let TypeScript understand string patterns at the type level.",{"title":55,"path":70,"acronym":6,"category":45,"difficulty":71,"description":72},"\u002Fterms\u002Ft\u002Ftype-theater","intermediate","Type theater is writing elaborate TypeScript types that impress your teammates but don't actually prevent bugs.",{"title":54,"path":74,"acronym":6,"category":75,"difficulty":71,"description":76},"\u002Fterms\u002Ft\u002Ftypescript","frontend","TypeScript is JavaScript with a strict parent watching over it.",1776518320544]