import React, { type ReactNode, type HTMLAttributes } from 'react';
export type ScrollWrapperProps = HTMLAttributes & {
/**
* Contents of the wrapper element
*/
children: ReactNode;
/**
* CSS class names that can be appended to the component.
*/
className?: string;
/**
* Determines the direction that the shadows apply
*/
orientation?: 'horizontal' | 'vertical';
/**
* Type of shadow treatment for the wrapper:
* - **cover** - full-width shadow in the wrapper based on shadow context
* - **contain** - shadow whose edges fit within the width of the wrapper
*/
shadowType?: 'cover' | 'contain';
};
type ShadowStates = {
top: boolean;
bottom: boolean;
start: boolean;
end: boolean;
};
export declare const setShadowStates: (targetData: HTMLDivElement) => ShadowStates;
/**
* `import {ScrollWrapper} from "@chanzuckerberg/eds";`
*
* This is a basic wrapper component that handles functionality to show/hide shadows along either the vertical or horizontal edges.
* This kicks in once the container's size is smaller than the overall height of the content within. For this to work,
* the element above the scroll wrapper must have a fixed height. The effect kicks in once the children of the scroll
* wrapper expand height above that fixed height.
*/
export declare const ScrollWrapper: ({ children, className, orientation, shadowType, ...other }: ScrollWrapperProps) => React.JSX.Element;
export {};