regexFind: /([a-zA-Z_$][a-zA-Z0-9_$]*\?\s*:[^,)]+),\s*([a-zA-Z_$][a-zA-Z0-9_$]*\s*:[^,)]+)/
regexReplace: $2, $1Move optional parameters after required parameters. Required parameters must come before optional ones.
- function createUser(firstName: string, lastName?: string, age: number) {
+ function createUser(firstName: string, age: number, lastName?: string) {
return { firstName, lastName, age }
}Explanation: Required parameters must come before optional parameters
- function processData(data?: string, required: boolean) {
+ function processData(required: boolean, data?: string) {
return { data, required }
}Explanation: Move optional parameter after required parameter
npx tsc ./docs/1016/index.ts --noEmit --prettydocs/1016/index.ts:1:59 - error TS1016: A required parameter cannot follow an optional parameter.
1 function createUser(firstName: string, lastName?: string, age: number) {
~~~OR (without --pretty flag):
docs/1016/index.ts(1,59): error TS1016: A required parameter cannot follow an optional parameter.