@material-ui/core
Version:
React components that implement Google's Material Design.
48 lines (39 loc) • 1.45 kB
TypeScript
import * as React from 'react';
import { StandardProps } from '..';
import { PaperProps } from '../Paper';
import { ModalProps, ModalClassKey } from '../Modal';
import { TransitionHandlerProps, TransitionProps } from '../transitions/transition';
export interface PopoverOrigin {
horizontal: 'left' | 'center' | 'right' | number;
vertical: 'top' | 'center' | 'bottom' | number;
}
export interface PopoverPosition {
top: number;
left: number;
}
export type PopoverReference = 'anchorEl' | 'anchorPosition' | 'none';
export interface PopoverProps
extends StandardProps<ModalProps & Partial<TransitionHandlerProps>, PopoverClassKey, 'children'> {
action?: (actions: PopoverActions) => void;
anchorEl?: HTMLElement | ((element: HTMLElement) => HTMLElement);
anchorOrigin?: PopoverOrigin;
anchorPosition?: PopoverPosition;
anchorReference?: PopoverReference;
children?: React.ReactNode;
elevation?: number;
getContentAnchorEl?: (element: HTMLElement) => HTMLElement;
marginThreshold?: number;
modal?: boolean;
PaperProps?: Partial<PaperProps>;
role?: string;
transformOrigin?: PopoverOrigin;
TransitionComponent?: React.ReactType;
transitionDuration?: TransitionProps['timeout'] | 'auto';
TransitionProps?: TransitionProps;
}
export type PopoverClassKey = 'paper';
export interface PopoverActions {
updatePosition(): void;
}
declare const Popover: React.ComponentType<PopoverProps>;
export default Popover;