forked from ard/ruoyi-api

zhangnaisong
2024-04-30 de54d81a33ad0c47b3b561d824cf6f0fb6343d82
1
2
3
4
5
6
7
8
/**
Recursively split a string literal into two parts on the first occurence of the given string, returning an array literal of all the separate parts.
*/
export type Split<S extends string, D extends string> =
    string extends S ? string[] :
    S extends '' ? [] :
    S extends `${infer T}${D}${infer U}` ? [T, ...Split<U, D>] :
    [S];