Installation
npm install --save @types/postcss-mixins
Summary
This package contains type definitions for postcss-mixins (https://github.com/postcss/postcss-mixins).
Details
Files were exported from https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/postcss-mixins.
index.d.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/ban-types
type MixinObj = Record<string, Exclude<Object, Function>>;
}
declare var postcssMixins: PluginCreator<postcssMixins.Options>;
export = postcssMixins;
Additional Details
- Last updated: Wed, 22 Nov 2023 00:24:48 GMT
- Dependencies: postcss
Credits
These definitions were written by Adam Thompson-Sharpe.