UNPKG

@react-awesome/use-breakpoint

Version:

useBreakpoint triggers callback when a container's size is equal to one specific breakpoint.

39 lines 1.85 kB
declare const DEFAULT_BREAKPOINTS: { sm: number; md: number; lg: number; xl: number; '2xl': number; }; export type DefaultBreakpointConfigs = typeof DEFAULT_BREAKPOINTS; export type BreakpointConfig = Record<string, number>; export type UseBreakpointCallback = () => any; export type UseBreakpointCallbacks<O extends Record<string, number> = DefaultBreakpointConfigs> = O extends DefaultBreakpointConfigs ? Record<keyof DefaultBreakpointConfigs, UseBreakpointCallback> : O extends Record<infer K, number> ? Record<K, UseBreakpointCallback> : never; export type UseBreakpointUtils<B extends Record<string, number> = DefaultBreakpointConfigs> = B extends DefaultBreakpointConfigs ? { greater(k: keyof DefaultBreakpointConfigs): boolean; greaterOrEqual: (k: keyof DefaultBreakpointConfigs) => boolean; smaller(k: keyof DefaultBreakpointConfigs): boolean; smallerOrEqual(k: keyof DefaultBreakpointConfigs): boolean; between(a: keyof DefaultBreakpointConfigs, b: keyof DefaultBreakpointConfigs): boolean; } : B extends Record<infer K, number> ? { greater(k: K): boolean; greaterOrEqual(k: K): boolean; smaller(k: K): boolean; smallerOrEqual(k: K): boolean; between(a: K, b: K): boolean; } : never; export type UseBreakpointOpts<B extends Record<string, number> = DefaultBreakpointConfigs> = { /** * @description Breakpoints object, each breakpoint should be defined in `px` value. */ breakpoints?: B; callbacks?: Partial<UseBreakpointCallbacks<B>>; fallbackValue?: keyof B; useResizeObserver?: boolean; containerEl?: HTMLElement | null; }; export declare function useBreakpoint<B extends Record<string, number>>(opts?: UseBreakpointOpts<B>): { currentBreakpoint?: keyof B; } & UseBreakpointUtils<B>; export {}; //# sourceMappingURL=useBreakpoint.d.ts.map