UNPKG

@lesnoypudge/utils

Version:

lesnoypudge's utils

12 lines (11 loc) 599 B
import { T } from '@lesnoypudge/types-utils-base/namespace'; type TrimLoop<_Arr extends string[]> = _Arr[1] extends undefined ? [T.Trim<_Arr[0]>] : [T.Trim<_Arr[0]>, ...TrimLoop<T.ArrayTail<_Arr>>]; export declare namespace toOneLine { type Return<_Text extends string> = (TrimLoop<T.Split<_Text, '\n'>> extends [...infer _Arr extends string[]] ? T.Trim<T.Join<_Arr, ' '>> : never); } /** * Takes string in any format and returns single * line with single whitespace between words. */ export declare const toOneLine: <_Text extends string>(text: _Text) => toOneLine.Return<_Text>; export {};