index.d.ts 913 B

12345678910111213141516171819202122232425
  1. import * as React from 'react';
  2. import { Collection } from './Collection';
  3. import { _rs } from './utils/observerUtil';
  4. export {
  5. /** @private Test only for mock trigger resize event */
  6. _rs, };
  7. export interface SizeInfo {
  8. width: number;
  9. height: number;
  10. offsetWidth: number;
  11. offsetHeight: number;
  12. }
  13. export type OnResize = (size: SizeInfo, element: HTMLElement) => void;
  14. export interface ResizeObserverProps {
  15. /** Pass to ResizeObserver.Collection with additional data */
  16. data?: any;
  17. children: React.ReactNode | ((ref: React.RefObject<any>) => React.ReactElement);
  18. disabled?: boolean;
  19. /** Trigger if element resized. Will always trigger when first time render. */
  20. onResize?: OnResize;
  21. }
  22. declare const RefResizeObserver: React.ForwardRefExoticComponent<ResizeObserverProps & React.RefAttributes<any>> & {
  23. Collection: typeof Collection;
  24. };
  25. export default RefResizeObserver;