@types/postcss-mixins
Version:
TypeScript definitions for postcss-mixins
63 lines (53 loc) • 2.27 kB
Markdown
> `npm install --save @types/postcss-mixins`
This package contains type definitions for postcss-mixins (https://github.com/postcss/postcss-mixins).
Files were exported from https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/postcss-mixins.
````ts
import { Container, PluginCreator } from "postcss";
declare namespace postcssMixins {
interface Options {
/**
* Define mixins in code instead of with CSS.
*
* For functions: the first parameter is the mixin rule,
* and all others are parameters passed to the mixin.
*/
mixins?: Record<string, Mixin> | undefined;
/**
* Autoload all mixins from one or more dirs.
* Mixin name will be taken from file name.
*/
mixinsDir?: string | string[] | undefined;
/**
* Similar to mixinsDir, except you can provide fast-glob syntax
* to target or not to target specific files.
*/
mixinsFiles?: string | string[] | undefined;
/**
* Remove unknown mixins instead of throwing an error.
* Off by default.
*/
silent?: boolean | undefined;
}
/**
* A mixin, either a function or an object
*/
type Mixin = MixinFn | MixinObj;
// eslint-disable-next-line @typescript-eslint/no-invalid-void-type
type MixinFn = (mixin: Container, ...args: string[]) => MixinObj | void;
// The Exclude here is meant to make sure that you can't assign invalid functions to MixinObj,
// which is possible with Record<string, any>
// eslint-disable-next-line @typescript-eslint/no-unsafe-function-type,@typescript-eslint/no-wrapper-object-types
type MixinObj = Record<string, Exclude<Object, Function>>;
}
declare var postcssMixins: PluginCreator<postcssMixins.Options>;
export = postcssMixins;
````
* Last updated: Wed, 23 Oct 2024 03:36:41 GMT
* Dependencies: [postcss](https://npmjs.com/package/postcss)
These definitions were written by [Adam Thompson-Sharpe](https://github.com/MysteryBlokHed).