vevet
Version:
Vevet is a JavaScript library for creative development that simplifies crafting rich interactions like split text animations, carousels, marquees, preloading, and more.
26 lines (20 loc) • 627 B
text/typescript
import { Module } from '../Module';
export type TResponsiveSource = Record<string, any> | Module;
export type TResponsivePick<T extends TResponsiveSource> =
T['_getMutable'] extends Function
? Partial<ReturnType<T['_getMutable']>>
: Partial<T>;
export type TResponsiveQuery =
| 'tablet'
| 'phone'
| 'mobile'
| 'non_mobile'
| 'landscape'
| 'portrait'
| (string & {});
export type TResponsiveRule<T extends TResponsiveSource> = {
at: TResponsiveQuery;
props: TResponsivePick<T>;
};
export type TResponsiveProps<T extends TResponsiveSource> =
T['_getMutable'] extends Function ? T['props'] : T;