| Server IP : 35.80.110.71 / Your IP : 216.73.216.221 Web Server : Apache/2.4.58 (Ubuntu) System : Linux ip-172-31-21-44 6.17.0-1019-aws #19~24.04.1-Ubuntu SMP Tue Jun 23 18:53:06 UTC 2026 x86_64 User : ubuntu ( 1000) PHP Version : 8.3.31 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : OFF Directory : /var/www/webhook-relay-web/current/node_modules/reserved-identifiers/ |
Upload File : |
// https://262.ecma-international.org/14.0/#sec-keywords-and-reserved-words
// 14 is ES2023
const identifiers = [
// Keywords
'await',
'break',
'case',
'catch',
'class',
'const',
'continue',
'debugger',
'default',
'delete',
'do',
'else',
'enum',
'export',
'extends',
'false',
'finally',
'for',
'function',
'if',
'import',
'in',
'instanceof',
'new',
'null',
'return',
'super',
'switch',
'this',
'throw',
'true',
'try',
'typeof',
'var',
'void',
'while',
'with',
'yield',
// Future reserved keywords (strict mode)
'implements',
'interface',
'let',
'package',
'private',
'protected',
'public',
'static',
// Not keywords, but still restricted
'arguments',
'eval',
];
// https://262.ecma-international.org/14.0/#sec-value-properties-of-the-global-object
const globalProperties = [
'globalThis',
'Infinity',
'NaN',
'undefined',
];
// These are TypeScript's built-in types that are reserved and cannot be used for type names
const typeScriptTypes = [
'any',
'bigint',
'boolean',
'never',
'null',
'number',
'object',
'string',
'symbol',
'undefined',
'unknown',
'void',
];
export default function reservedIdentifiers({includeGlobalProperties = false} = {}) {
return new Set([
...identifiers,
...(includeGlobalProperties ? globalProperties : []),
]);
}
export function typeScriptReservedTypes() {
return new Set(typeScriptTypes);
}