Function split

  • Split an object into multiple objects.

    Type Parameters

    • T extends AnyRecord
    • S1 extends Partial<{ [k in string | number | symbol]: undefined | T[k] }>

    Parameters

    • target: T
    • split1: S1

    Returns [Split<T, S1>, Omit<T, keyof S1>]

    [...entries, remaining]

  • Split an object into multiple objects.

    Type Parameters

    • T extends AnyRecord
    • S1 extends Partial<{ [k in string | number | symbol]: undefined | T[k] }>
    • S2 extends Partial<{ [k in string | number | symbol]: undefined | T[k] }>

    Parameters

    • target: T
    • split1: S1
    • split2: S2

    Returns [Split<T, S1>, Split<T, S2>, Omit<T, keyof S1 | keyof S2>]

    [...entries, remaining]

  • Split an object into multiple objects.

    Type Parameters

    • T extends AnyRecord
    • S1 extends Partial<{ [k in string | number | symbol]: undefined | T[k] }>
    • S2 extends Partial<{ [k in string | number | symbol]: undefined | T[k] }>
    • S3 extends Partial<{ [k in string | number | symbol]: undefined | T[k] }>

    Parameters

    • target: T
    • splitter1: S1
    • splitter2: S2
    • splitter3: S3

    Returns [
        Split<T, S1>,
        Split<T, S2>,
        Split<T, S3>,
        Omit<T, keyof S1 | keyof S2 | keyof S3>,
    ]

    [...entries, remaining]

  • Split an object into multiple objects.

    Type Parameters

    • T extends AnyRecord
    • S1 extends Partial<{ [k in string | number | symbol]: undefined | T[k] }>
    • S2 extends Partial<{ [k in string | number | symbol]: undefined | T[k] }>
    • S3 extends Partial<{ [k in string | number | symbol]: undefined | T[k] }>
    • S4 extends Partial<{ [k in string | number | symbol]: undefined | T[k] }>

    Parameters

    • target: T
    • splitter1: S1
    • splitter2: S2
    • splitter3: S3
    • splitter4: S4

    Returns [
        Split<T, S1>,
        Split<T, S2>,
        Split<T, S3>,
        Split<T, S4>,
        Omit<T, keyof S1 | keyof S2 | keyof S3 | keyof S4>,
    ]

    [...entries, remaining]

  • Split an object into multiple objects.

    Type Parameters

    • T extends AnyRecord
    • S1 extends Partial<{ [k in string | number | symbol]: undefined | T[k] }>
    • S2 extends Partial<{ [k in string | number | symbol]: undefined | T[k] }>
    • S3 extends Partial<{ [k in string | number | symbol]: undefined | T[k] }>
    • S4 extends Partial<{ [k in string | number | symbol]: undefined | T[k] }>
    • S5 extends Partial<{ [k in string | number | symbol]: undefined | T[k] }>

    Parameters

    • target: T
    • splitter1: S1
    • splitter2: S2
    • splitter3: S3
    • splitter4: S4
    • splitter5: S5

    Returns [
        Split<T, S1>,
        Split<T, S2>,
        Split<T, S3>,
        Split<T, S4>,
        Split<T, S5>,
        Omit<T, keyof S1 | keyof S2 | keyof S3 | keyof S4 | keyof S5>,
    ]

    [...entries, remaining]

  • Split an object into multiple objects.

    Type Parameters

    • T extends AnyRecord
    • S1 extends Partial<{ [k in string | number | symbol]: undefined | T[k] }>
    • S2 extends Partial<{ [k in string | number | symbol]: undefined | T[k] }>
    • S3 extends Partial<{ [k in string | number | symbol]: undefined | T[k] }>
    • S4 extends Partial<{ [k in string | number | symbol]: undefined | T[k] }>
    • S5 extends Partial<{ [k in string | number | symbol]: undefined | T[k] }>
    • S6 extends Partial<{ [k in string | number | symbol]: undefined | T[k] }>

    Parameters

    • target: T
    • splitter1: S1
    • splitter2: S2
    • splitter3: S3
    • splitter4: S4
    • splitter5: S5
    • splitter6: S6

    Returns [
        Split<T, S1>,
        Split<T, S2>,
        Split<T, S3>,
        Split<T, S4>,
        Split<T, S5>,
        Split<T, S6>,
        Omit<T, keyof S1 | keyof S2 | keyof S3 | keyof S4 | keyof S5 | keyof S6>,
    ]

    [...entries, remaining]

  • Split an object into multiple objects.

    Type Parameters

    • T extends AnyRecord
    • S1 extends Partial<{ [k in string | number | symbol]: undefined | T[k] }>
    • S2 extends Partial<{ [k in string | number | symbol]: undefined | T[k] }>
    • S3 extends Partial<{ [k in string | number | symbol]: undefined | T[k] }>
    • S4 extends Partial<{ [k in string | number | symbol]: undefined | T[k] }>
    • S5 extends Partial<{ [k in string | number | symbol]: undefined | T[k] }>
    • S6 extends Partial<{ [k in string | number | symbol]: undefined | T[k] }>
    • S7 extends Partial<{ [k in string | number | symbol]: undefined | T[k] }>

    Parameters

    • target: T
    • splitter1: S1
    • splitter2: S2
    • splitter3: S3
    • splitter4: S4
    • splitter5: S5
    • splitter6: S6
    • splitter7: S7

    Returns [
        Split<T, S1>,
        Split<T, S2>,
        Split<T, S3>,
        Split<T, S4>,
        Split<T, S5>,
        Split<T, S6>,
        Split<T, S7>,
        Omit<
            T,
            keyof S1
            | keyof S2
            | keyof S3
            | keyof S4
            | keyof S5
            | keyof S6
            | keyof S7,
        >,
    ]

    [...entries, remaining]

  • Split an object into multiple objects.

    Type Parameters

    • T extends AnyRecord
    • S1 extends Partial<{ [k in string | number | symbol]: undefined | T[k] }>
    • S2 extends Partial<{ [k in string | number | symbol]: undefined | T[k] }>
    • S3 extends Partial<{ [k in string | number | symbol]: undefined | T[k] }>
    • S4 extends Partial<{ [k in string | number | symbol]: undefined | T[k] }>
    • S5 extends Partial<{ [k in string | number | symbol]: undefined | T[k] }>
    • S6 extends Partial<{ [k in string | number | symbol]: undefined | T[k] }>
    • S7 extends Partial<{ [k in string | number | symbol]: undefined | T[k] }>
    • S8 extends Partial<{ [k in string | number | symbol]: undefined | T[k] }>

    Parameters

    • target: T
    • splitter1: S1
    • splitter2: S2
    • splitter3: S3
    • splitter4: S4
    • splitter5: S5
    • splitter6: S6
    • splitter7: S7
    • splitter8: S8

    Returns [
        Split<T, S1>,
        Split<T, S2>,
        Split<T, S3>,
        Split<T, S4>,
        Split<T, S5>,
        Split<T, S6>,
        Split<T, S7>,
        Split<T, S8>,
        Omit<
            T,
            | keyof S1
            | keyof S2
            | keyof S3
            | keyof S4
            | keyof S5
            | keyof S6
            | keyof S7
            | keyof S8,
        >,
    ]

    [...entries, remaining]

  • Split an object into multiple objects.

    Type Parameters

    • T extends AnyRecord
    • S1 extends Partial<{ [k in string | number | symbol]: undefined | T[k] }>
    • S2 extends Partial<{ [k in string | number | symbol]: undefined | T[k] }>
    • S3 extends Partial<{ [k in string | number | symbol]: undefined | T[k] }>
    • S4 extends Partial<{ [k in string | number | symbol]: undefined | T[k] }>
    • S5 extends Partial<{ [k in string | number | symbol]: undefined | T[k] }>
    • S6 extends Partial<{ [k in string | number | symbol]: undefined | T[k] }>
    • S7 extends Partial<{ [k in string | number | symbol]: undefined | T[k] }>
    • S8 extends Partial<{ [k in string | number | symbol]: undefined | T[k] }>
    • S9 extends Partial<{ [k in string | number | symbol]: undefined | T[k] }>

    Parameters

    • target: T
    • splitter1: S1
    • splitter2: S2
    • splitter3: S3
    • splitter4: S4
    • splitter5: S5
    • splitter6: S6
    • splitter7: S7
    • splitter8: S8
    • splitter9: S9

    Returns [
        Split<T, S1>,
        Split<T, S2>,
        Split<T, S3>,
        Split<T, S4>,
        Split<T, S5>,
        Split<T, S6>,
        Split<T, S7>,
        Split<T, S8>,
        Split<T, S9>,
        Omit<
            T,
            | keyof S1
            | keyof S2
            | keyof S3
            | keyof S4
            | keyof S5
            | keyof S6
            | keyof S7
            | keyof S8
            | keyof S9,
        >,
    ]

    [...entries, remaining]