UNPKG

@alifd/next

Version:

A configurable component library for web built on React.

57 lines (56 loc) 2.48 kB
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<AffixProps, AffixState> { static propTypes: { prefix: PropTypes.Requireable<string>; container: PropTypes.Requireable<(...args: any[]) => any>; offsetTop: PropTypes.Requireable<number>; offsetBottom: PropTypes.Requireable<number>; onAffix: PropTypes.Requireable<(...args: any[]) => any>; useAbsolute: PropTypes.Requireable<boolean>; className: PropTypes.Requireable<string>; style: PropTypes.Requireable<object>; children: PropTypes.Requireable<any>; }; 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<typeof setTimeout> | null; affixNode: HTMLDivElement; affixChildNode: HTMLDivElement; _clearContainerEvent: () => void; _setEventHandlerForContainer(getContainer: NonNullable<AffixProps['container']>): void; _removeEventHandlerForContainer(getContainer: NonNullable<AffixProps['container']>): 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<AffixProps & import("../config-provider/types").ComponentCommonProps, Affix, {}> & { _getAffixMode: typeof Affix._getAffixMode; }; export default _default;