[{"data":1,"prerenderedAt":1416},["ShallowReactive",2],{"navigation":3,"\u002Fpackages\u002Feslint-config\u002Fusage\u002Ftypescript":352,"\u002Fpackages\u002Feslint-config\u002Fusage\u002Ftypescript-surround":1361,"packages-data":1366},[4,23],{"title":5,"path":6,"stem":7,"children":8,"icon":22},"Getting Started","\u002Fgetting-started","1.getting-started\u002F1.index",[9,12,17],{"title":10,"path":6,"stem":7,"icon":11},"Introduction","i-tabler-home",{"title":13,"path":14,"stem":15,"icon":16},"Manifest","\u002Fgetting-started\u002Fmanifest","1.getting-started\u002F2.manifest","i-tabler-file-diff",{"title":18,"path":19,"stem":20,"icon":21},"Contributing","\u002Fgetting-started\u002Fcontributing","1.getting-started\u002F3.contributing","i-tabler-git-fork",false,{"title":24,"path":25,"stem":26,"children":27,"icon":30},"Packages","\u002Fpackages","2.packages\u002F1.index",[28,31,108,194,247,273],{"title":29,"path":25,"stem":26,"icon":30},"Overview","i-tabler-packages",{"title":32,"icon":33,"path":34,"stem":35,"children":36,"page":22},"AdonisJS API Query","i-tabler-filter-search","\u002Fpackages\u002Fadonisjs-api-query","2.packages\u002Fadonisjs-api-query",[37,56,87],{"title":5,"icon":38,"path":39,"stem":40,"children":41,"page":22},"i-tabler-rocket","\u002Fpackages\u002Fadonisjs-api-query\u002Fgetting-started","2.packages\u002Fadonisjs-api-query\u002F1.getting-started",[42,46,51],{"title":10,"path":43,"stem":44,"icon":45},"\u002Fpackages\u002Fadonisjs-api-query\u002Fgetting-started\u002Fintroduction","2.packages\u002Fadonisjs-api-query\u002F1.getting-started\u002F1.introduction","i-tabler-book",{"title":47,"path":48,"stem":49,"icon":50},"Installation","\u002Fpackages\u002Fadonisjs-api-query\u002Fgetting-started\u002Finstallation","2.packages\u002Fadonisjs-api-query\u002F1.getting-started\u002F2.installation","i-tabler-download",{"title":52,"path":53,"stem":54,"icon":55},"Configuration","\u002Fpackages\u002Fadonisjs-api-query\u002Fgetting-started\u002Fconfiguration","2.packages\u002Fadonisjs-api-query\u002F1.getting-started\u002F3.configuration","i-tabler-settings",{"title":57,"icon":58,"path":59,"stem":60,"children":61,"page":22},"Features","i-tabler-sparkles","\u002Fpackages\u002Fadonisjs-api-query\u002Ffeatures","2.packages\u002Fadonisjs-api-query\u002F2.features",[62,67,72,77,82],{"title":63,"path":64,"stem":65,"icon":66},"Filtering","\u002Fpackages\u002Fadonisjs-api-query\u002Ffeatures\u002Ffiltering","2.packages\u002Fadonisjs-api-query\u002F2.features\u002F1.filtering","i-tabler-filter",{"title":68,"path":69,"stem":70,"icon":71},"Sorting","\u002Fpackages\u002Fadonisjs-api-query\u002Ffeatures\u002Fsorting","2.packages\u002Fadonisjs-api-query\u002F2.features\u002F2.sorting","i-tabler-arrows-sort",{"title":73,"path":74,"stem":75,"icon":76},"Including Relationships","\u002Fpackages\u002Fadonisjs-api-query\u002Ffeatures\u002Fincluding-relationships","2.packages\u002Fadonisjs-api-query\u002F2.features\u002F3.including-relationships","i-tabler-hierarchy-2",{"title":78,"path":79,"stem":80,"icon":81},"Filterable Classes","\u002Fpackages\u002Fadonisjs-api-query\u002Ffeatures\u002Ffilterable-classes","2.packages\u002Fadonisjs-api-query\u002F2.features\u002F4.filterable-classes","i-tabler-box-model",{"title":83,"path":84,"stem":85,"icon":86},"Validation","\u002Fpackages\u002Fadonisjs-api-query\u002Ffeatures\u002Fvalidation","2.packages\u002Fadonisjs-api-query\u002F2.features\u002F5.validation","i-tabler-shield-check",{"title":88,"icon":89,"path":90,"stem":91,"children":92,"page":22},"Advanced Usage","i-tabler-adjustments","\u002Fpackages\u002Fadonisjs-api-query\u002Fadvanced","2.packages\u002Fadonisjs-api-query\u002F3.advanced",[93,98,103],{"title":94,"path":95,"stem":96,"icon":97},"Custom Filters, Sorts & Includes","\u002Fpackages\u002Fadonisjs-api-query\u002Fadvanced\u002Fcustom-clauses","2.packages\u002Fadonisjs-api-query\u002F3.advanced\u002F1.custom-clauses","i-tabler-puzzle",{"title":99,"path":100,"stem":101,"icon":102},"Request & Delimiters","\u002Fpackages\u002Fadonisjs-api-query\u002Fadvanced\u002Frequest-and-delimiters","2.packages\u002Fadonisjs-api-query\u002F3.advanced\u002F2.request-and-delimiters","i-tabler-brackets-contain",{"title":104,"path":105,"stem":106,"icon":107},"Exceptions","\u002Fpackages\u002Fadonisjs-api-query\u002Fadvanced\u002Fexceptions","2.packages\u002Fadonisjs-api-query\u002F3.advanced\u002F3.exceptions","i-tabler-alert-triangle",{"title":109,"icon":110,"path":111,"stem":112,"children":113,"page":22},"AdonisJS Permission","i-tabler-shield-lock","\u002Fpackages\u002Fadonisjs-permission","2.packages\u002Fadonisjs-permission",[114,127,157,183],{"title":5,"icon":38,"path":115,"stem":116,"children":117,"page":22},"\u002Fpackages\u002Fadonisjs-permission\u002Fgetting-started","2.packages\u002Fadonisjs-permission\u002F1.getting-started",[118,121,124],{"title":10,"path":119,"stem":120,"icon":45},"\u002Fpackages\u002Fadonisjs-permission\u002Fgetting-started\u002Fintroduction","2.packages\u002Fadonisjs-permission\u002F1.getting-started\u002F1.introduction",{"title":47,"path":122,"stem":123,"icon":50},"\u002Fpackages\u002Fadonisjs-permission\u002Fgetting-started\u002Finstallation","2.packages\u002Fadonisjs-permission\u002F1.getting-started\u002F2.installation",{"title":52,"path":125,"stem":126,"icon":55},"\u002Fpackages\u002Fadonisjs-permission\u002Fgetting-started\u002Fconfiguration","2.packages\u002Fadonisjs-permission\u002F1.getting-started\u002F3.configuration",{"title":128,"icon":86,"path":129,"stem":130,"children":131,"page":22},"Basic Usage","\u002Fpackages\u002Fadonisjs-permission\u002Fbasic-usage","2.packages\u002Fadonisjs-permission\u002F2.basic-usage",[132,137,142,147,152],{"title":133,"path":134,"stem":135,"icon":136},"Roles & Permissions","\u002Fpackages\u002Fadonisjs-permission\u002Fbasic-usage\u002Froles-and-permissions","2.packages\u002Fadonisjs-permission\u002F2.basic-usage\u002F1.roles-and-permissions","i-tabler-users",{"title":138,"path":139,"stem":140,"icon":141},"Checking Access","\u002Fpackages\u002Fadonisjs-permission\u002Fbasic-usage\u002Fchecking","2.packages\u002Fadonisjs-permission\u002F2.basic-usage\u002F2.checking","i-tabler-checks",{"title":143,"path":144,"stem":145,"icon":146},"Middleware","\u002Fpackages\u002Fadonisjs-permission\u002Fbasic-usage\u002Fmiddleware","2.packages\u002Fadonisjs-permission\u002F2.basic-usage\u002F3.middleware","i-tabler-route",{"title":148,"path":149,"stem":150,"icon":151},"Wildcard Permissions","\u002Fpackages\u002Fadonisjs-permission\u002Fbasic-usage\u002Fwildcard-permissions","2.packages\u002Fadonisjs-permission\u002F2.basic-usage\u002F4.wildcard-permissions","i-tabler-asterisk",{"title":153,"path":154,"stem":155,"icon":156},"Catalog & Sync","\u002Fpackages\u002Fadonisjs-permission\u002Fbasic-usage\u002Fcatalog","2.packages\u002Fadonisjs-permission\u002F2.basic-usage\u002F5.catalog","i-tabler-refresh",{"title":158,"icon":159,"path":160,"stem":161,"children":162,"page":22},"Advanced","i-tabler-tool","\u002Fpackages\u002Fadonisjs-permission\u002Fadvanced","2.packages\u002Fadonisjs-permission\u002F3.advanced",[163,168,173,178],{"title":164,"path":165,"stem":166,"icon":167},"Teams","\u002Fpackages\u002Fadonisjs-permission\u002Fadvanced\u002Fteams","2.packages\u002Fadonisjs-permission\u002F3.advanced\u002F1.teams","i-tabler-building",{"title":169,"path":170,"stem":171,"icon":172},"Super-Admin","\u002Fpackages\u002Fadonisjs-permission\u002Fadvanced\u002Fsuper-admin","2.packages\u002Fadonisjs-permission\u002F3.advanced\u002F2.super-admin","i-tabler-crown",{"title":174,"path":175,"stem":176,"icon":177},"Events","\u002Fpackages\u002Fadonisjs-permission\u002Fadvanced\u002Fevents","2.packages\u002Fadonisjs-permission\u002F3.advanced\u002F3.events","i-tabler-radio",{"title":179,"path":180,"stem":181,"icon":182},"Cache","\u002Fpackages\u002Fadonisjs-permission\u002Fadvanced\u002Fcache","2.packages\u002Fadonisjs-permission\u002F3.advanced\u002F4.cache","i-tabler-database",{"title":184,"icon":185,"path":186,"stem":187,"children":188,"page":22},"Upgrading","i-tabler-circle-arrow-up","\u002Fpackages\u002Fadonisjs-permission\u002Fupgrading","2.packages\u002Fadonisjs-permission\u002F4.upgrading",[189],{"title":190,"path":191,"stem":192,"icon":193},"From adonis-lucid-permission","\u002Fpackages\u002Fadonisjs-permission\u002Fupgrading\u002Ffrom-adonis-lucid-permission","2.packages\u002Fadonisjs-permission\u002F4.upgrading\u002F1.from-adonis-lucid-permission","i-tabler-git-compare",{"title":195,"icon":196,"path":197,"stem":198,"children":199,"page":22},"AdonisJS Simple Auth","i-tabler-key","\u002Fpackages\u002Fadonisjs-simple-auth","2.packages\u002Fadonisjs-simple-auth",[200,214,233],{"title":5,"icon":38,"path":201,"stem":202,"children":203,"page":22},"\u002Fpackages\u002Fadonisjs-simple-auth\u002Fgetting-started","2.packages\u002Fadonisjs-simple-auth\u002F1.getting-started",[204,208,211],{"title":10,"path":205,"stem":206,"icon":207},"\u002Fpackages\u002Fadonisjs-simple-auth\u002Fgetting-started\u002Fintroduction","2.packages\u002Fadonisjs-simple-auth\u002F1.getting-started\u002F1.introduction","i-tabler-info-circle",{"title":47,"path":209,"stem":210,"icon":50},"\u002Fpackages\u002Fadonisjs-simple-auth\u002Fgetting-started\u002Finstallation","2.packages\u002Fadonisjs-simple-auth\u002F1.getting-started\u002F2.installation",{"title":52,"path":212,"stem":213,"icon":55},"\u002Fpackages\u002Fadonisjs-simple-auth\u002Fgetting-started\u002Fconfiguration","2.packages\u002Fadonisjs-simple-auth\u002F1.getting-started\u002F3.configuration",{"title":215,"icon":110,"path":216,"stem":217,"children":218,"page":22},"Usage","\u002Fpackages\u002Fadonisjs-simple-auth\u002Fusage","2.packages\u002Fadonisjs-simple-auth\u002F2.usage",[219,224,229],{"title":220,"path":221,"stem":222,"icon":223},"Generating API Keys","\u002Fpackages\u002Fadonisjs-simple-auth\u002Fusage\u002Fgenerating-api-keys","2.packages\u002Fadonisjs-simple-auth\u002F2.usage\u002F1.generating-api-keys","i-tabler-terminal-2",{"title":225,"path":226,"stem":227,"icon":228},"Protecting Routes","\u002Fpackages\u002Fadonisjs-simple-auth\u002Fusage\u002Fprotecting-routes","2.packages\u002Fadonisjs-simple-auth\u002F2.usage\u002F2.protecting-routes","i-tabler-lock",{"title":230,"path":231,"stem":232,"icon":107},"Error Handling & i18n","\u002Fpackages\u002Fadonisjs-simple-auth\u002Fusage\u002Ferror-handling","2.packages\u002Fadonisjs-simple-auth\u002F2.usage\u002F3.error-handling",{"title":158,"icon":89,"path":234,"stem":235,"children":236,"page":22},"\u002Fpackages\u002Fadonisjs-simple-auth\u002Fadvanced","2.packages\u002Fadonisjs-simple-auth\u002F3.advanced",[237,242],{"title":238,"path":239,"stem":240,"icon":241},"Testing with Japa","\u002Fpackages\u002Fadonisjs-simple-auth\u002Fadvanced\u002Ftesting-with-japa","2.packages\u002Fadonisjs-simple-auth\u002F3.advanced\u002F1.testing-with-japa","i-tabler-flask",{"title":243,"path":244,"stem":245,"icon":246},"API Reference","\u002Fpackages\u002Fadonisjs-simple-auth\u002Fadvanced\u002Fapi-reference","2.packages\u002Fadonisjs-simple-auth\u002F3.advanced\u002F2.api-reference","i-tabler-code",{"title":248,"icon":249,"path":250,"stem":251,"children":252,"page":22},"AdonisJS Soft Deletes","i-tabler-trash-off","\u002Fpackages\u002Fadonisjs-soft-deletes","2.packages\u002Fadonisjs-soft-deletes",[253,263],{"title":5,"icon":38,"path":254,"stem":255,"children":256,"page":22},"\u002Fpackages\u002Fadonisjs-soft-deletes\u002Fgetting-started","2.packages\u002Fadonisjs-soft-deletes\u002F1.getting-started",[257,260],{"title":10,"path":258,"stem":259,"icon":207},"\u002Fpackages\u002Fadonisjs-soft-deletes\u002Fgetting-started\u002Fintroduction","2.packages\u002Fadonisjs-soft-deletes\u002F1.getting-started\u002F1.introduction",{"title":47,"path":261,"stem":262,"icon":50},"\u002Fpackages\u002Fadonisjs-soft-deletes\u002Fgetting-started\u002Finstallation","2.packages\u002Fadonisjs-soft-deletes\u002F1.getting-started\u002F2.installation",{"title":215,"icon":45,"path":264,"stem":265,"children":266,"page":22},"\u002Fpackages\u002Fadonisjs-soft-deletes\u002Fusage","2.packages\u002Fadonisjs-soft-deletes\u002F2.usage",[267,270],{"title":215,"path":268,"stem":269,"icon":246},"\u002Fpackages\u002Fadonisjs-soft-deletes\u002Fusage\u002Fusage","2.packages\u002Fadonisjs-soft-deletes\u002F2.usage\u002F1.usage",{"title":243,"path":271,"stem":272,"icon":45},"\u002Fpackages\u002Fadonisjs-soft-deletes\u002Fusage\u002Fapi-reference","2.packages\u002Fadonisjs-soft-deletes\u002F2.usage\u002F2.api-reference",{"title":274,"icon":275,"path":276,"stem":277,"children":278,"page":22},"ESLint Config","i-tabler-list-check","\u002Fpackages\u002Feslint-config","2.packages\u002Feslint-config",[279,292,315,334],{"title":5,"icon":38,"path":280,"stem":281,"children":282,"page":22},"\u002Fpackages\u002Feslint-config\u002Fgetting-started","2.packages\u002Feslint-config\u002F1.getting-started",[283,286,289],{"title":10,"path":284,"stem":285,"icon":207},"\u002Fpackages\u002Feslint-config\u002Fgetting-started\u002Fintroduction","2.packages\u002Feslint-config\u002F1.getting-started\u002F1.introduction",{"title":47,"path":287,"stem":288,"icon":50},"\u002Fpackages\u002Feslint-config\u002Fgetting-started\u002Finstallation","2.packages\u002Feslint-config\u002F1.getting-started\u002F2.installation",{"title":52,"path":290,"stem":291,"icon":55},"\u002Fpackages\u002Feslint-config\u002Fgetting-started\u002Fconfiguration","2.packages\u002Feslint-config\u002F1.getting-started\u002F3.configuration",{"title":293,"icon":58,"path":294,"stem":295,"children":296,"page":22},"Usage & Features","\u002Fpackages\u002Feslint-config\u002Fusage","2.packages\u002Feslint-config\u002F2.usage",[297,301,305,310],{"title":298,"path":299,"stem":300,"icon":223},"CLI Wizard","\u002Fpackages\u002Feslint-config\u002Fusage\u002Fcli-wizard","2.packages\u002Feslint-config\u002F2.usage\u002F1.cli-wizard",{"title":302,"path":303,"stem":304,"icon":97},"Frameworks","\u002Fpackages\u002Feslint-config\u002Fusage\u002Fframeworks","2.packages\u002Feslint-config\u002F2.usage\u002F2.frameworks",{"title":306,"path":307,"stem":308,"icon":309},"TypeScript & Node","\u002Fpackages\u002Feslint-config\u002Fusage\u002Ftypescript","2.packages\u002Feslint-config\u002F2.usage\u002F3.typescript","i-tabler-brand-typescript",{"title":311,"path":312,"stem":313,"icon":314},"Stylistic & Formatters","\u002Fpackages\u002Feslint-config\u002Fusage\u002Fstylistic-and-formatters","2.packages\u002Feslint-config\u002F2.usage\u002F4.stylistic-and-formatters","i-tabler-wand",{"title":316,"icon":89,"path":317,"stem":318,"children":319,"page":22},"Customization","\u002Fpackages\u002Feslint-config\u002Fcustomization","2.packages\u002Feslint-config\u002F3.customization",[320,325,330],{"title":321,"path":322,"stem":323,"icon":324},"Composer & Overrides","\u002Fpackages\u002Feslint-config\u002Fcustomization\u002Fcomposer-and-overrides","2.packages\u002Feslint-config\u002F3.customization\u002F1.composer-and-overrides","i-tabler-layers-subtract",{"title":326,"path":327,"stem":328,"icon":329},"Ignores & Globs","\u002Fpackages\u002Feslint-config\u002Fcustomization\u002Fignores-and-globs","2.packages\u002Feslint-config\u002F3.customization\u002F2.ignores-and-globs","i-tabler-file-off",{"title":331,"path":332,"stem":333,"icon":246},"Editor Integration","\u002Fpackages\u002Feslint-config\u002Fcustomization\u002Feditor-integration","2.packages\u002Feslint-config\u002F3.customization\u002F3.editor-integration",{"title":243,"icon":45,"path":335,"stem":336,"children":337,"page":22},"\u002Fpackages\u002Feslint-config\u002Fapi-reference","2.packages\u002Feslint-config\u002F4.api-reference",[338,343,347],{"title":339,"path":340,"stem":341,"icon":342},"Factory & Presets","\u002Fpackages\u002Feslint-config\u002Fapi-reference\u002Ffactory-and-presets","2.packages\u002Feslint-config\u002F4.api-reference\u002F1.factory-and-presets","i-tabler-function",{"title":344,"path":345,"stem":346,"icon":30},"Sub-Configs","\u002Fpackages\u002Feslint-config\u002Fapi-reference\u002Fsub-configs","2.packages\u002Feslint-config\u002F4.api-reference\u002F2.sub-configs",{"title":348,"path":349,"stem":350,"icon":351},"Utilities & Globs","\u002Fpackages\u002Feslint-config\u002Fapi-reference\u002Futilities-and-globs","2.packages\u002Feslint-config\u002F4.api-reference\u002F3.utilities-and-globs","i-tabler-tools",{"id":353,"title":306,"body":354,"description":1355,"extension":1356,"meta":1357,"navigation":1358,"path":307,"seo":1359,"stem":308,"__hash__":1360},"docs\u002F2.packages\u002Feslint-config\u002F2.usage\u002F3.typescript.md",{"type":355,"value":356,"toc":1345},"minimark",[357,365,370,381,386,408,525,556,560,582,587,609,698,707,806,813,985,988,992,1002,1062,1065,1171,1173,1177,1200,1235,1341],[358,359,360,364],"p",{},[361,362,363],"code",{},"@eienjs\u002Feslint-config"," provides deep TypeScript and Node.js integration out of the box.",[366,367,369],"h2",{"id":368},"typescript-configuration","TypeScript Configuration",[358,371,372,373,376,377,380],{},"TypeScript support is automatically enabled when ",[361,374,375],{},"typescript"," or ",[361,378,379],{},"@typescript\u002Fnative-preview"," is installed in your project.",[382,383,385],"h3",{"id":384},"type-aware-linting","Type-Aware Linting",[358,387,388,389,392,393,392,396,399,400,403,404,407],{},"To enable type-aware rules (such as ",[361,390,391],{},"@typescript-eslint\u002Fno-floating-promises",", ",[361,394,395],{},"@typescript-eslint\u002Fno-misused-promises",[361,397,398],{},"@typescript-eslint\u002Fawait-thenable",", and ",[361,401,402],{},"@typescript-eslint\u002Fswitch-exhaustiveness-check","), provide ",[361,405,406],{},"tsconfigPath",":",[409,410,416],"pre",{"className":411,"code":412,"filename":413,"language":414,"meta":415,"style":415},"language-js shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","import { eienjs } from '@eienjs\u002Feslint-config';\n\nexport default eienjs({\n  typescript: {\n    tsconfigPath: 'tsconfig.json',\n  },\n});\n","eslint.config.js","js","",[361,417,418,453,460,478,490,508,514],{"__ignoreMap":415},[419,420,423,427,431,435,438,441,444,447,450],"span",{"class":421,"line":422},"line",1,[419,424,426],{"class":425},"s7zQu","import",[419,428,430],{"class":429},"sMK4o"," {",[419,432,434],{"class":433},"sTEyZ"," eienjs",[419,436,437],{"class":429}," }",[419,439,440],{"class":425}," from",[419,442,443],{"class":429}," '",[419,445,363],{"class":446},"sfazB",[419,448,449],{"class":429},"'",[419,451,452],{"class":429},";\n",[419,454,456],{"class":421,"line":455},2,[419,457,459],{"emptyLinePlaceholder":458},true,"\n",[419,461,463,466,469,472,475],{"class":421,"line":462},3,[419,464,465],{"class":425},"export",[419,467,468],{"class":425}," default",[419,470,434],{"class":471},"s2Zo4",[419,473,474],{"class":433},"(",[419,476,477],{"class":429},"{\n",[419,479,481,485,487],{"class":421,"line":480},4,[419,482,484],{"class":483},"swJcz","  typescript",[419,486,407],{"class":429},[419,488,489],{"class":429}," {\n",[419,491,493,496,498,500,503,505],{"class":421,"line":492},5,[419,494,495],{"class":483},"    tsconfigPath",[419,497,407],{"class":429},[419,499,443],{"class":429},[419,501,502],{"class":446},"tsconfig.json",[419,504,449],{"class":429},[419,506,507],{"class":429},",\n",[419,509,511],{"class":421,"line":510},6,[419,512,513],{"class":429},"  },\n",[419,515,517,520,523],{"class":421,"line":516},7,[419,518,519],{"class":429},"}",[419,521,522],{"class":433},")",[419,524,452],{"class":429},[358,526,527,528,530,531,533,534,537,538,541,542,392,545,399,548,551,552,555],{},"When ",[361,529,406],{}," is set, ",[361,532,363],{}," configures ",[361,535,536],{},"projectService"," on ",[361,539,540],{},"@typescript-eslint\u002Fparser"," and applies strict type-checked rules to ",[361,543,544],{},"**\u002F*.?([cm])ts",[361,546,547],{},"**\u002F*.?([cm])tsx",[361,549,550],{},"**\u002F*.vue"," (excluding Markdown code blocks and ",[361,553,554],{},".astro\u002F*.ts"," virtual files).",[382,557,559],{"id":558},"erasable-syntax-only","Erasable Syntax Only",[358,561,562,563,566,567,570,571,392,574,577,578,581],{},"Node.js native TypeScript execution (",[361,564,565],{},"--experimental-strip-types",") and TypeScript's ",[361,568,569],{},"erasableSyntaxOnly"," compiler option disallow runtime TypeScript constructs such as ",[361,572,573],{},"enum",[361,575,576],{},"namespace",", parameter properties, and ",[361,579,580],{},"import ="," aliases.",[358,583,584,585,407],{},"You can enforce erasable syntax in ESLint by enabling ",[361,586,569],{},[409,588,592],{"className":589,"code":590,"language":591,"meta":415,"style":415},"language-bash shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","pnpm add -D eslint-plugin-erasable-syntax-only\n","bash",[361,593,594],{"__ignoreMap":415},[419,595,596,600,603,606],{"class":421,"line":422},[419,597,599],{"class":598},"sBMFI","pnpm",[419,601,602],{"class":446}," add",[419,604,605],{"class":446}," -D",[419,607,608],{"class":446}," eslint-plugin-erasable-syntax-only\n",[409,610,612],{"className":411,"code":611,"filename":413,"language":414,"meta":415,"style":415},"import { eienjs } from '@eienjs\u002Feslint-config';\n\nexport default eienjs({\n  typescript: {\n    erasableSyntaxOnly: true,\n    tsconfigPath: 'tsconfig.json',\n  },\n});\n",[361,613,614,634,638,650,658,671,685,689],{"__ignoreMap":415},[419,615,616,618,620,622,624,626,628,630,632],{"class":421,"line":422},[419,617,426],{"class":425},[419,619,430],{"class":429},[419,621,434],{"class":433},[419,623,437],{"class":429},[419,625,440],{"class":425},[419,627,443],{"class":429},[419,629,363],{"class":446},[419,631,449],{"class":429},[419,633,452],{"class":429},[419,635,636],{"class":421,"line":455},[419,637,459],{"emptyLinePlaceholder":458},[419,639,640,642,644,646,648],{"class":421,"line":462},[419,641,465],{"class":425},[419,643,468],{"class":425},[419,645,434],{"class":471},[419,647,474],{"class":433},[419,649,477],{"class":429},[419,651,652,654,656],{"class":421,"line":480},[419,653,484],{"class":483},[419,655,407],{"class":429},[419,657,489],{"class":429},[419,659,660,663,665,669],{"class":421,"line":492},[419,661,662],{"class":483},"    erasableSyntaxOnly",[419,664,407],{"class":429},[419,666,668],{"class":667},"sfNiH"," true",[419,670,507],{"class":429},[419,672,673,675,677,679,681,683],{"class":421,"line":510},[419,674,495],{"class":483},[419,676,407],{"class":429},[419,678,443],{"class":429},[419,680,502],{"class":446},[419,682,449],{"class":429},[419,684,507],{"class":429},[419,686,687],{"class":421,"line":516},[419,688,513],{"class":429},[419,690,692,694,696],{"class":421,"line":691},8,[419,693,519],{"class":429},[419,695,522],{"class":433},[419,697,452],{"class":429},[358,699,700,701,376,704,407],{},"You can also selectively toggle ",[361,702,703],{},"enums",[361,705,706],{},"parameterProperties",[409,708,710],{"className":411,"code":709,"filename":413,"language":414,"meta":415,"style":415},"import { eienjs } from '@eienjs\u002Feslint-config';\n\nexport default eienjs({\n  typescript: {\n    erasableSyntaxOnly: {\n      enums: true,\n      parameterProperties: false,\n    },\n  },\n});\n",[361,711,712,732,736,748,756,764,775,787,792,797],{"__ignoreMap":415},[419,713,714,716,718,720,722,724,726,728,730],{"class":421,"line":422},[419,715,426],{"class":425},[419,717,430],{"class":429},[419,719,434],{"class":433},[419,721,437],{"class":429},[419,723,440],{"class":425},[419,725,443],{"class":429},[419,727,363],{"class":446},[419,729,449],{"class":429},[419,731,452],{"class":429},[419,733,734],{"class":421,"line":455},[419,735,459],{"emptyLinePlaceholder":458},[419,737,738,740,742,744,746],{"class":421,"line":462},[419,739,465],{"class":425},[419,741,468],{"class":425},[419,743,434],{"class":471},[419,745,474],{"class":433},[419,747,477],{"class":429},[419,749,750,752,754],{"class":421,"line":480},[419,751,484],{"class":483},[419,753,407],{"class":429},[419,755,489],{"class":429},[419,757,758,760,762],{"class":421,"line":492},[419,759,662],{"class":483},[419,761,407],{"class":429},[419,763,489],{"class":429},[419,765,766,769,771,773],{"class":421,"line":510},[419,767,768],{"class":483},"      enums",[419,770,407],{"class":429},[419,772,668],{"class":667},[419,774,507],{"class":429},[419,776,777,780,782,785],{"class":421,"line":516},[419,778,779],{"class":483},"      parameterProperties",[419,781,407],{"class":429},[419,783,784],{"class":667}," false",[419,786,507],{"class":429},[419,788,789],{"class":421,"line":691},[419,790,791],{"class":429},"    },\n",[419,793,795],{"class":421,"line":794},9,[419,796,513],{"class":429},[419,798,800,802,804],{"class":421,"line":799},10,[419,801,519],{"class":429},[419,803,522],{"class":433},[419,805,452],{"class":429},[382,807,809,810,522],{"id":808},"typescript-options-reference-optionstypescript","TypeScript Options Reference (",[361,811,812],{},"OptionsTypescript",[814,815,816,835],"table",{},[817,818,819],"thead",{},[820,821,822,826,829,832],"tr",{},[823,824,825],"th",{},"Option",[823,827,828],{},"Type",[823,830,831],{},"Default",[823,833,834],{},"Description",[836,837,838,861,884,904,923,945,964],"tbody",{},[820,839,840,845,850,855],{},[841,842,843],"td",{},[361,844,406],{},[841,846,847],{},[361,848,849],{},"string",[841,851,852],{},[361,853,854],{},"undefined",[841,856,857,858,860],{},"Path to ",[361,859,502],{}," to enable type-aware linting.",[820,862,863,867,872,877],{},[841,864,865],{},[361,866,569],{},[841,868,869],{},[361,870,871],{},"boolean | OptionsErasableSyntaxOnly",[841,873,874],{},[361,875,876],{},"false",[841,878,879,880,883],{},"Enforce erasable TypeScript syntax rules via ",[361,881,882],{},"eslint-plugin-erasable-syntax-only",".",[820,885,886,891,896,901],{},[841,887,888],{},[361,889,890],{},"filesTypeAware",[841,892,893],{},[361,894,895],{},"string[]",[841,897,898],{},[361,899,900],{},"[GLOB_TS, GLOB_TSX, GLOB_VUE]",[841,902,903],{},"Globs for files that should receive type-aware rules.",[820,905,906,911,915,920],{},[841,907,908],{},[361,909,910],{},"ignoresTypeAware",[841,912,913],{},[361,914,895],{},[841,916,917],{},[361,918,919],{},"['**\u002F*.md\u002F**', '**\u002F*.astro\u002F*.ts']",[841,921,922],{},"Globs excluded from type-aware linting.",[820,924,925,930,935,940],{},[841,926,927],{},[361,928,929],{},"parserOptions",[841,931,932],{},[361,933,934],{},"Partial\u003CParserOptions>",[841,936,937],{},[361,938,939],{},"{}",[841,941,942,943,883],{},"Additional parser options passed to ",[361,944,540],{},[820,946,947,952,957,961],{},[841,948,949],{},[361,950,951],{},"overrides",[841,953,954],{},[361,955,956],{},"Rules",[841,958,959],{},[361,960,939],{},[841,962,963],{},"Override standard TypeScript rules.",[820,965,966,971,975,979],{},[841,967,968],{},[361,969,970],{},"overridesTypeAware",[841,972,973],{},[361,974,956],{},[841,976,977],{},[361,978,939],{},[841,980,981,982,984],{},"Override type-aware rules when ",[361,983,406],{}," is enabled.",[986,987],"hr",{},[366,989,991],{"id":990},"unicorn-naming-conventions","Unicorn & Naming Conventions",[358,993,994,997,998,1001],{},[361,995,996],{},"eslint-plugin-unicorn"," is enabled by default with ",[361,999,1000],{},"allRecommended: true"," and curated overrides for EienJS conventions:",[1003,1004,1005,1032],"ul",{},[1006,1007,1008,1015,1016,1019,1020,1023,1024,1027,1028,1031],"li",{},[1009,1010,1011,1014],"strong",{},[361,1012,1013],{},"snake_case"," Filenames",": Enforces ",[361,1017,1018],{},"unicorn\u002Ffilename-case"," with ",[361,1021,1022],{},"case: 'snakeCase'"," across source files (ignoring ",[361,1025,1026],{},".md"," and ",[361,1029,1030],{},".mdx",").",[1006,1033,1034,1037,1038,392,1041,392,1044,392,1047,392,1050,392,1053,392,1056,392,1059,1031],{},[1009,1035,1036],{},"Class Member Ordering",": Enforces a consistent order (",[361,1039,1040],{},"static-field",[361,1042,1043],{},"static-block",[361,1045,1046],{},"public-field",[361,1048,1049],{},"private-field",[361,1051,1052],{},"constructor",[361,1054,1055],{},"public-method",[361,1057,1058],{},"static-method",[361,1060,1061],{},"private-method",[358,1063,1064],{},"To customize or relax Unicorn rules:",[409,1066,1068],{"className":411,"code":1067,"filename":413,"language":414,"meta":415,"style":415},"import { eienjs } from '@eienjs\u002Feslint-config';\n\nexport default eienjs({\n  unicorn: {\n    allRecommended: true,\n    overrides: {\n      'unicorn\u002Ffilename-case': 'off',\n    },\n  },\n});\n",[361,1069,1070,1090,1094,1106,1115,1126,1135,1155,1159,1163],{"__ignoreMap":415},[419,1071,1072,1074,1076,1078,1080,1082,1084,1086,1088],{"class":421,"line":422},[419,1073,426],{"class":425},[419,1075,430],{"class":429},[419,1077,434],{"class":433},[419,1079,437],{"class":429},[419,1081,440],{"class":425},[419,1083,443],{"class":429},[419,1085,363],{"class":446},[419,1087,449],{"class":429},[419,1089,452],{"class":429},[419,1091,1092],{"class":421,"line":455},[419,1093,459],{"emptyLinePlaceholder":458},[419,1095,1096,1098,1100,1102,1104],{"class":421,"line":462},[419,1097,465],{"class":425},[419,1099,468],{"class":425},[419,1101,434],{"class":471},[419,1103,474],{"class":433},[419,1105,477],{"class":429},[419,1107,1108,1111,1113],{"class":421,"line":480},[419,1109,1110],{"class":483},"  unicorn",[419,1112,407],{"class":429},[419,1114,489],{"class":429},[419,1116,1117,1120,1122,1124],{"class":421,"line":492},[419,1118,1119],{"class":483},"    allRecommended",[419,1121,407],{"class":429},[419,1123,668],{"class":667},[419,1125,507],{"class":429},[419,1127,1128,1131,1133],{"class":421,"line":510},[419,1129,1130],{"class":483},"    overrides",[419,1132,407],{"class":429},[419,1134,489],{"class":429},[419,1136,1137,1140,1142,1144,1146,1148,1151,1153],{"class":421,"line":516},[419,1138,1139],{"class":429},"      '",[419,1141,1018],{"class":483},[419,1143,449],{"class":429},[419,1145,407],{"class":429},[419,1147,443],{"class":429},[419,1149,1150],{"class":446},"off",[419,1152,449],{"class":429},[419,1154,507],{"class":429},[419,1156,1157],{"class":421,"line":691},[419,1158,791],{"class":429},[419,1160,1161],{"class":421,"line":794},[419,1162,513],{"class":429},[419,1164,1165,1167,1169],{"class":421,"line":799},[419,1166,519],{"class":429},[419,1168,522],{"class":433},[419,1170,452],{"class":429},[986,1172],{},[366,1174,1176],{"id":1175},"pnpm-workspaces-catalogs","pnpm Workspaces & Catalogs",[358,1178,1179,1180,1183,1184,1187,1188,1190,1191,1027,1194,1196,1197,407],{},"When a ",[361,1181,1182],{},"pnpm-workspace.yaml"," file is detected (or when ",[361,1185,1186],{},"pnpm: true"," is passed), ",[361,1189,363],{}," lints both ",[361,1192,1193],{},"package.json",[361,1195,1182],{}," using ",[361,1198,1199],{},"eslint-plugin-pnpm",[1003,1201,1202,1214,1229],{},[1006,1203,1204,1205,392,1208,392,1211,1031],{},"Validates catalog references (",[361,1206,1207],{},"pnpm\u002Fjson-valid-catalog",[361,1209,1210],{},"pnpm\u002Fyaml-no-duplicate-catalog-item",[361,1212,1213],{},"pnpm\u002Fyaml-no-unused-catalog-item",[1006,1215,1216,1217,1219,1220,392,1223,392,1226,1031],{},"Enforces workspace security settings in ",[361,1218,1182],{}," (",[361,1221,1222],{},"minimumReleaseAgeExcludePrune: true",[361,1224,1225],{},"shellEmulator: true",[361,1227,1228],{},"trustPolicy: 'no-downgrade'",[1006,1230,1231,1232,1234],{},"Sorts keys in ",[361,1233,1182],{}," logically.",[409,1236,1238],{"className":411,"code":1237,"filename":413,"language":414,"meta":415,"style":415},"import { eienjs } from '@eienjs\u002Feslint-config';\n\nexport default eienjs({\n  pnpm: {\n    catalogs: true,\n    json: true,\n    sort: true,\n    yaml: true,\n  },\n});\n",[361,1239,1240,1260,1264,1276,1285,1296,1307,1318,1329,1333],{"__ignoreMap":415},[419,1241,1242,1244,1246,1248,1250,1252,1254,1256,1258],{"class":421,"line":422},[419,1243,426],{"class":425},[419,1245,430],{"class":429},[419,1247,434],{"class":433},[419,1249,437],{"class":429},[419,1251,440],{"class":425},[419,1253,443],{"class":429},[419,1255,363],{"class":446},[419,1257,449],{"class":429},[419,1259,452],{"class":429},[419,1261,1262],{"class":421,"line":455},[419,1263,459],{"emptyLinePlaceholder":458},[419,1265,1266,1268,1270,1272,1274],{"class":421,"line":462},[419,1267,465],{"class":425},[419,1269,468],{"class":425},[419,1271,434],{"class":471},[419,1273,474],{"class":433},[419,1275,477],{"class":429},[419,1277,1278,1281,1283],{"class":421,"line":480},[419,1279,1280],{"class":483},"  pnpm",[419,1282,407],{"class":429},[419,1284,489],{"class":429},[419,1286,1287,1290,1292,1294],{"class":421,"line":492},[419,1288,1289],{"class":483},"    catalogs",[419,1291,407],{"class":429},[419,1293,668],{"class":667},[419,1295,507],{"class":429},[419,1297,1298,1301,1303,1305],{"class":421,"line":510},[419,1299,1300],{"class":483},"    json",[419,1302,407],{"class":429},[419,1304,668],{"class":667},[419,1306,507],{"class":429},[419,1308,1309,1312,1314,1316],{"class":421,"line":516},[419,1310,1311],{"class":483},"    sort",[419,1313,407],{"class":429},[419,1315,668],{"class":667},[419,1317,507],{"class":429},[419,1319,1320,1323,1325,1327],{"class":421,"line":691},[419,1321,1322],{"class":483},"    yaml",[419,1324,407],{"class":429},[419,1326,668],{"class":667},[419,1328,507],{"class":429},[419,1330,1331],{"class":421,"line":794},[419,1332,513],{"class":429},[419,1334,1335,1337,1339],{"class":421,"line":799},[419,1336,519],{"class":429},[419,1338,522],{"class":433},[419,1340,452],{"class":429},[1342,1343,1344],"style",{},"html pre.shiki code .s7zQu, html code.shiki .s7zQu{--shiki-light:#39ADB5;--shiki-light-font-style:italic;--shiki-default:#89DDFF;--shiki-default-font-style:italic;--shiki-dark:#89DDFF;--shiki-dark-font-style:italic}html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .sTEyZ, html code.shiki .sTEyZ{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}html pre.shiki code .s2Zo4, html code.shiki .s2Zo4{--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF}html pre.shiki code .swJcz, html code.shiki .swJcz{--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html pre.shiki code .sBMFI, html code.shiki .sBMFI{--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B}html pre.shiki code .sfNiH, html code.shiki .sfNiH{--shiki-light:#FF5370;--shiki-default:#FF9CAC;--shiki-dark:#FF9CAC}",{"title":415,"searchDepth":422,"depth":455,"links":1346},[1347,1353,1354],{"id":368,"depth":455,"text":369,"children":1348},[1349,1350,1351],{"id":384,"depth":462,"text":385},{"id":558,"depth":462,"text":559},{"id":808,"depth":462,"text":1352},"TypeScript Options Reference (OptionsTypescript)",{"id":990,"depth":455,"text":991},{"id":1175,"depth":455,"text":1176},"Configure TypeScript rules, type-aware linting, erasable syntax checks, Unicorn, and pnpm workspaces.","md",{},{"icon":309},{"title":306,"description":1355},"J_qUyWGELxu8eF2-YihtL-TZALP_ujm9i-V4oR5ndvg",[1362,1364],{"title":302,"path":303,"stem":304,"description":1363,"icon":97,"children":-1},"Configure first-class ESLint support for AdonisJS, Nuxt, Vue, and Astro projects.",{"title":311,"path":312,"stem":313,"description":1365,"icon":314,"children":-1},"Format code using ESLint Stylistic rules and optional Prettier formatters for CSS, HTML, Markdown, XML, SVG, and Astro.",{"id":1367,"extension":1368,"meta":1369,"packages":1370,"stem":1414,"__hash__":1415},"packages\u002Fdata\u002Fpackages.json","json",{},[1371,1378,1384,1390,1396,1402,1408],{"name":1372,"title":1373,"description":1374,"icon":86,"category":1375,"repo":1376,"version":1377,"docs":458,"featured":458},"adonisjs-permission","Permission","Associate users with roles and permissions in your AdonisJS app","adonisjs","https:\u002F\u002Fgithub.com\u002Feienjs\u002Fadonisjs-permission","1.0.0",{"name":1379,"title":1380,"description":1381,"icon":33,"category":1375,"repo":1382,"version":1383,"docs":458,"featured":458},"adonisjs-api-query","API Query","Easily build Lucid queries from API requests","https:\u002F\u002Fgithub.com\u002Feienjs\u002Fadonisjs-api-query","3.0.1",{"name":1385,"title":1386,"description":1387,"icon":249,"category":1375,"repo":1388,"version":1389,"docs":458,"featured":458},"adonisjs-soft-deletes","Soft Deletes","Provider-based Soft deletes for AdonisJS","https:\u002F\u002Fgithub.com\u002Feienjs\u002Fadonisjs-soft-deletes","1.0.2",{"name":1391,"title":1392,"description":1393,"icon":196,"category":1375,"repo":1394,"version":1395,"docs":458},"adonisjs-simple-auth","Simple Auth","Single API key authentication for AdonisJS v7 applications","https:\u002F\u002Fgithub.com\u002Feienjs\u002Fadonisjs-simple-auth","2.1.1",{"name":1397,"title":1398,"description":1399,"icon":1400,"category":1375,"repo":1401,"docs":22},"adonisjs-sentry","Sentry","Sentry service provider for AdonisJS v7.","i-tabler-bug","https:\u002F\u002Fgithub.com\u002Feienjs\u002Fadonisjs-sentry",{"name":1403,"title":274,"description":1404,"icon":275,"category":1405,"repo":1406,"version":1407,"docs":458,"featured":22},"eslint-config","EienJS ESLint Config","tooling","https:\u002F\u002Fgithub.com\u002Feienjs\u002Feslint-config","2.3.2",{"name":1409,"title":1410,"description":1411,"icon":1412,"category":1405,"repo":1413,"docs":22},"adonisjs-pkg-boilerplate","Package Boilerplate","A boilerplate for creating AdonisJS packages.","i-tabler-package","https:\u002F\u002Fgithub.com\u002Feienjs\u002Fadonisjs-pkg-boilerplate","data\u002Fpackages","6wo0wRXmbaj0vuQC3qzRIqDl7IszTEWwnN0SPt_cyXk",1794286727502]