ktongue's picture
download
raw
702 Bytes
import { StyleFunction } from "../style/index.js";
/**
* given a list of StyleFunction return the intersection of the props each individual
* StyleFunction requires.
*
* If `firstFn` requires { color: string } and `secondFn` requires { spacing: number }
* their composed function requires { color: string, spacing: number }
*/
type ComposedArg<T> = T extends Array<(arg: infer P) => any> ? P : never;
type ComposedOwnerState<T> = ComposedArg<T>;
export type ComposedStyleFunction<T extends Array<StyleFunction<any>>> = StyleFunction<ComposedOwnerState<T>> & {
filterProps: string[];
};
export default function compose<T extends Array<StyleFunction<any>>>(...args: T): ComposedStyleFunction<T>;

Xet Storage Details

Size:
702 Bytes
·
Xet hash:
a465fae79bd110975b83968ce8ad7849da48e7f98328ca90b9e0f995e2a06a0f

Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.