Type Alias SxExtensions<Config>

SxExtensions<Config>: {
    _cls: ((className: Config["classes"][number], ...classJoins: SxConfigClass<Config>[]) => `& .${string}`);
    $: ((...selectors: SxSelectorArray<Config>) => string);
    classes: ClassEnums<Config["classes"]>;
    cls: ((className: Config["classes"][number], ...classJoins: SxConfigClass<Config>[]) => `&.${string}`);
    def: (<D>(...definition: D) => UnionToIntersection<{
        [K in D[number]]: Config["definitions"][K]
    }[D[number]]>);
    definitions: Config["definitions"];
    el: ((element: ElementFirstSelector, ...elementAdditions: ElementRestSelector[]) => `& ${keyof HTMLElementTagNameMap}${string}`);
    hov: ((modifier?: string) => `&${string}:hover`);
}

Type Parameters

Type declaration

  • _cls: ((className: Config["classes"][number], ...classJoins: SxConfigClass<Config>[]) => `& .${string}`)

    Creates a class selector with a dot prefix

      • (className, ...classJoins): `& .${string}`
      • Parameters

        • className: Config["classes"][number]
        • Rest...classJoins: SxConfigClass<Config>[]

        Returns `& .${string}`

  • $: ((...selectors: SxSelectorArray<Config>) => string)

    Creates a selector string from an array of provided selectors

      • (...selectors): string
      • Parameters

        • Rest...selectors: SxSelectorArray<Config>

        Returns string

  • classes: ClassEnums<Config["classes"]>

    class enum

  • cls: ((className: Config["classes"][number], ...classJoins: SxConfigClass<Config>[]) => `&.${string}`)

    Creates a class selector

      • (className, ...classJoins): `&.${string}`
      • Parameters

        • className: Config["classes"][number]
        • Rest...classJoins: SxConfigClass<Config>[]

        Returns `&.${string}`

  • def: (<D>(...definition: D) => UnionToIntersection<{
        [K in D[number]]: Config["definitions"][K]
    }[D[number]]>)

    merges the definitions of the provided keys

      • <D>(...definition): UnionToIntersection<{
            [K in D[number]]: Config["definitions"][K]
        }[D[number]]>
      • Type Parameters

        • D extends (keyof Config["definitions"])[]

        Parameters

        • Rest...definition: D

        Returns UnionToIntersection<{
            [K in D[number]]: Config["definitions"][K]
        }[D[number]]>

  • definitions: Config["definitions"]

    definition enum

  • el: ((element: ElementFirstSelector, ...elementAdditions: ElementRestSelector[]) => `& ${keyof HTMLElementTagNameMap}${string}`)

    Creates an element selector

      • (element, ...elementAdditions): `& ${keyof HTMLElementTagNameMap}${string}`
      • Parameters

        • element: ElementFirstSelector
        • Rest...elementAdditions: ElementRestSelector[]

        Returns `& ${keyof HTMLElementTagNameMap}${string}`

  • hov: ((modifier?: string) => `&${string}:hover`)

    Creates a hover selector

      • (modifier?): `&${string}:hover`
      • Parameters

        • Optionalmodifier: string

        Returns `&${string}:hover`