File size: 1,484 Bytes
5befefa
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
declare namespace list {
  type List = {
    /**

     * Safely splits comma-separated values (such as those for `transition-*`

     * and `background` properties).

     *

     * ```js

     * Once (root, { list }) {

     *   list.comma('black, linear-gradient(white, black)')

     *   //=> ['black', 'linear-gradient(white, black)']

     * }

     * ```

     *

     * @param str Comma-separated values.

     * @return Split values.

     */
    comma(str: string): string[]

    default: List

    /**

     * Safely splits space-separated values (such as those for `background`,

     * `border-radius`, and other shorthand properties).

     *

     * ```js

     * Once (root, { list }) {

     *   list.space('1px calc(10% + 1px)') //=> ['1px', 'calc(10% + 1px)']

     * }

     * ```

     *

     * @param str Space-separated values.

     * @return Split values.

     */
    space(str: string): string[]

    /**

     * Safely splits values.

     *

     * ```js

     * Once (root, { list }) {

     *   list.split('1px calc(10% + 1px)', [' ', '\n', '\t']) //=> ['1px', 'calc(10% + 1px)']

     * }

     * ```

     *

     * @param string separated values.

     * @param separators array of separators.

     * @param last boolean indicator.

     * @return Split values.

     */
    split(
      string: string,
      separators: readonly string[],
      last: boolean
    ): string[]
  }
}

declare let list: list.List

export = list