signatureCombiningRestParameters5.ts(6,11): error TS2345: Argument of type 'boolean[]' is not assignable to parameter of type 'boolean'.
signatureCombiningRestParameters5.ts(22,14): error TS2345: Argument of type 'number[]' is not assignable to parameter of type 'number'.


==== signatureCombiningRestParameters5.ts (2 errors) ====
    declare const test1:
      | ((...args: [a: string | number, b: number | boolean]) => void)
      | ((...args: [c: number | boolean, d: string | boolean]) => void);
    
    test1(42, true);
    test1(42, [true]); // error
              ~~~~~~
!!! error TS2345: Argument of type 'boolean[]' is not assignable to parameter of type 'boolean'.
    
    declare function test2<
      A extends readonly unknown[],
      B extends readonly unknown[],
    >(
      c: (...args: A) => void,
      d: (...args: B) => void,
      e: (arg: typeof c | typeof d) => void,
    ): void;
    
    test2(
      (a: number | boolean, b: string | number) => {},
      (c: string | boolean, d: number | boolean) => {},
      (cb) => {
        cb(true, 42);
        cb(true, [42]); // error
                 ~~~~
!!! error TS2345: Argument of type 'number[]' is not assignable to parameter of type 'number'.
      },
    );
    