import React, { Component } from 'react'; import PropTypes from 'prop-types'; import ResizeObserver from 'resize-observer-polyfill'; import type { AffixProps, AffixState, AffixMode } from './types'; /** Affix */ declare class Affix extends Component { static propTypes: { prefix: PropTypes.Requireable; container: PropTypes.Requireable<(...args: any[]) => any>; offsetTop: PropTypes.Requireable; offsetBottom: PropTypes.Requireable; onAffix: PropTypes.Requireable<(...args: any[]) => any>; useAbsolute: PropTypes.Requireable; className: PropTypes.Requireable; style: PropTypes.Requireable; children: PropTypes.Requireable; }; static defaultProps: { prefix: string; container: () => Window & typeof globalThis; onAffix: () => void; }; static _getAffixMode(nextProps: AffixProps): AffixMode; constructor(props: AffixProps, context?: unknown); static getDerivedStateFromProps(nextProps: AffixProps): { affixMode: AffixMode; } | null; componentDidMount(): void; componentDidUpdate(prevProps: AffixProps): void; componentWillUnmount(): void; resizeObserver: ResizeObserver; timeout: ReturnType | null; affixNode: HTMLDivElement; affixChildNode: HTMLDivElement; _clearContainerEvent: () => void; _setEventHandlerForContainer(getContainer: NonNullable): void; _removeEventHandlerForContainer(getContainer: NonNullable): void; updatePosition: () => void; _updateNodePosition: () => false | undefined; _setAffixStyle(affixStyle: AffixState['style'], affixed?: boolean): void; _setContainerStyle(containerStyle: AffixState['containerStyle']): void; _getOffset(affixNode: HTMLDivElement, affixContainer: Element | Window): { top: number; left: number; width: number; height: number; }; _affixNodeRefHandler: (ref: HTMLDivElement) => void; _affixChildNodeRefHandler: (ref: HTMLDivElement) => void; render(): React.JSX.Element; } export { AffixProps }; declare const _default: import("../config-provider/types").ConfiguredComponentClass & { _getAffixMode: typeof Affix._getAffixMode; }; export default _default;