Type Alias DropMatch<A, Criteria>

DropMatch<A, Criteria>: A[0] extends Criteria
    ? never[]
    : undefined extends Criteria
        ? null extends Criteria
            ? NonNullable<A[0]>[]
            : Exclude<A[0], undefined>[]
        : null extends Criteria
            ? Exclude<A[0], null>[]
            : Criteria extends A[0]
                ? Exclude<A[0], Criteria>[]
                : A[0] extends Criteria
                    ? A
                    : Exclude<A[0], Criteria>[]

⚗️ transform

Type Parameters

  • A extends Readonly<unknown[]>
  • Criteria