You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							261 lines
						
					
					
						
							6.9 KiB
						
					
					
				
			
		
		
	
	
							261 lines
						
					
					
						
							6.9 KiB
						
					
					
				import * as Popper from '@popperjs/core';
 | 
						|
 | 
						|
export type BasePlacement = Popper.BasePlacement;
 | 
						|
 | 
						|
export type Placement = Popper.Placement;
 | 
						|
 | 
						|
export type Content =
 | 
						|
  | string
 | 
						|
  | Element
 | 
						|
  | DocumentFragment
 | 
						|
  | ((ref: Element) => string | Element | DocumentFragment);
 | 
						|
 | 
						|
export type SingleTarget = Element;
 | 
						|
 | 
						|
export type MultipleTargets = string | Element[] | NodeList;
 | 
						|
 | 
						|
export type Targets = SingleTarget | MultipleTargets;
 | 
						|
 | 
						|
export interface ReferenceElement<TProps = Props> extends Element {
 | 
						|
  _tippy?: Instance<TProps>;
 | 
						|
}
 | 
						|
 | 
						|
export interface PopperElement<TProps = Props> extends HTMLDivElement {
 | 
						|
  _tippy?: Instance<TProps>;
 | 
						|
}
 | 
						|
 | 
						|
export interface LifecycleHooks<TProps = Props> {
 | 
						|
  onAfterUpdate(
 | 
						|
    instance: Instance<TProps>,
 | 
						|
    partialProps: Partial<TProps>
 | 
						|
  ): void;
 | 
						|
  onBeforeUpdate(
 | 
						|
    instance: Instance<TProps>,
 | 
						|
    partialProps: Partial<TProps>
 | 
						|
  ): void;
 | 
						|
  onCreate(instance: Instance<TProps>): void;
 | 
						|
  onDestroy(instance: Instance<TProps>): void;
 | 
						|
  onHidden(instance: Instance<TProps>): void;
 | 
						|
  onHide(instance: Instance<TProps>): void | false;
 | 
						|
  onMount(instance: Instance<TProps>): void;
 | 
						|
  onShow(instance: Instance<TProps>): void | false;
 | 
						|
  onShown(instance: Instance<TProps>): void;
 | 
						|
  onTrigger(instance: Instance<TProps>, event: Event): void;
 | 
						|
  onUntrigger(instance: Instance<TProps>, event: Event): void;
 | 
						|
  onClickOutside(instance: Instance<TProps>, event: Event): void;
 | 
						|
}
 | 
						|
 | 
						|
export interface RenderProps {
 | 
						|
  allowHTML: boolean;
 | 
						|
  animation: string | boolean;
 | 
						|
  arrow: boolean | string | SVGElement | DocumentFragment;
 | 
						|
  content: Content;
 | 
						|
  inertia: boolean;
 | 
						|
  maxWidth: number | string;
 | 
						|
  role: string;
 | 
						|
  theme: string;
 | 
						|
  zIndex: number;
 | 
						|
}
 | 
						|
 | 
						|
export interface GetReferenceClientRect {
 | 
						|
  (): ClientRect | DOMRect;
 | 
						|
  contextElement?: Element;
 | 
						|
}
 | 
						|
 | 
						|
export interface Props extends LifecycleHooks, RenderProps {
 | 
						|
  animateFill: boolean;
 | 
						|
  appendTo: 'parent' | Element | ((ref: Element) => Element);
 | 
						|
  aria: {
 | 
						|
    content?: 'auto' | 'describedby' | 'labelledby' | null;
 | 
						|
    expanded?: 'auto' | boolean;
 | 
						|
  };
 | 
						|
  delay: number | [number | null, number | null];
 | 
						|
  duration: number | [number | null, number | null];
 | 
						|
  followCursor: boolean | 'horizontal' | 'vertical' | 'initial';
 | 
						|
  getReferenceClientRect: null | GetReferenceClientRect;
 | 
						|
  hideOnClick: boolean | 'toggle';
 | 
						|
  ignoreAttributes: boolean;
 | 
						|
  inlinePositioning: boolean;
 | 
						|
  interactive: boolean;
 | 
						|
  interactiveBorder: number;
 | 
						|
  interactiveDebounce: number;
 | 
						|
  moveTransition: string;
 | 
						|
  offset:
 | 
						|
    | [number, number]
 | 
						|
    | (({
 | 
						|
        placement,
 | 
						|
        popper,
 | 
						|
        reference,
 | 
						|
      }: {
 | 
						|
        placement: Placement;
 | 
						|
        popper: Popper.Rect;
 | 
						|
        reference: Popper.Rect;
 | 
						|
      }) => [number, number]);
 | 
						|
  placement: Placement;
 | 
						|
  plugins: Plugin<unknown>[];
 | 
						|
  popperOptions: Partial<Popper.Options>;
 | 
						|
  render:
 | 
						|
    | ((
 | 
						|
        instance: Instance
 | 
						|
      ) => {
 | 
						|
        popper: PopperElement;
 | 
						|
        onUpdate?: (prevProps: Props, nextProps: Props) => void;
 | 
						|
      })
 | 
						|
    | null;
 | 
						|
  showOnCreate: boolean;
 | 
						|
  sticky: boolean | 'reference' | 'popper';
 | 
						|
  touch: boolean | 'hold' | ['hold', number];
 | 
						|
  trigger: string;
 | 
						|
  triggerTarget: Element | Element[] | null;
 | 
						|
}
 | 
						|
 | 
						|
export interface DefaultProps extends Omit<Props, 'delay' | 'duration'> {
 | 
						|
  delay: number | [number, number];
 | 
						|
  duration: number | [number, number];
 | 
						|
}
 | 
						|
 | 
						|
export interface Instance<TProps = Props> {
 | 
						|
  clearDelayTimeouts(): void;
 | 
						|
  destroy(): void;
 | 
						|
  disable(): void;
 | 
						|
  enable(): void;
 | 
						|
  hide(): void;
 | 
						|
  hideWithInteractivity(event: MouseEvent): void;
 | 
						|
  id: number;
 | 
						|
  plugins: Plugin<TProps>[];
 | 
						|
  popper: PopperElement<TProps>;
 | 
						|
  popperInstance: Popper.Instance | null;
 | 
						|
  props: TProps;
 | 
						|
  reference: ReferenceElement<TProps>;
 | 
						|
  setContent(content: Content): void;
 | 
						|
  setProps(partialProps: Partial<TProps>): void;
 | 
						|
  show(): void;
 | 
						|
  state: {
 | 
						|
    isEnabled: boolean;
 | 
						|
    isVisible: boolean;
 | 
						|
    isDestroyed: boolean;
 | 
						|
    isMounted: boolean;
 | 
						|
    isShown: boolean;
 | 
						|
  };
 | 
						|
  unmount(): void;
 | 
						|
}
 | 
						|
 | 
						|
export interface TippyStatics {
 | 
						|
  readonly currentInput: {isTouch: boolean};
 | 
						|
  readonly defaultProps: DefaultProps;
 | 
						|
  setDefaultProps(partialProps: Partial<DefaultProps>): void;
 | 
						|
}
 | 
						|
 | 
						|
export interface Tippy<TProps = Props> extends TippyStatics {
 | 
						|
  (targets: SingleTarget, optionalProps?: Partial<TProps>): Instance<TProps>;
 | 
						|
}
 | 
						|
 | 
						|
export interface Tippy<TProps = Props> extends TippyStatics {
 | 
						|
  (targets: MultipleTargets, optionalProps?: Partial<TProps>): Instance<
 | 
						|
    TProps
 | 
						|
  >[];
 | 
						|
}
 | 
						|
 | 
						|
declare const tippy: Tippy;
 | 
						|
 | 
						|
// =============================================================================
 | 
						|
// Addon types
 | 
						|
// =============================================================================
 | 
						|
export interface DelegateInstance<TProps = Props> extends Instance<TProps> {
 | 
						|
  destroy(shouldDestroyTargetInstances?: boolean): void;
 | 
						|
}
 | 
						|
 | 
						|
export interface Delegate<TProps = Props> {
 | 
						|
  (
 | 
						|
    targets: SingleTarget,
 | 
						|
    props: Partial<TProps> & {target: string}
 | 
						|
  ): DelegateInstance<TProps>;
 | 
						|
}
 | 
						|
 | 
						|
export interface Delegate<TProps = Props> {
 | 
						|
  (
 | 
						|
    targets: MultipleTargets,
 | 
						|
    props: Partial<TProps> & {target: string}
 | 
						|
  ): DelegateInstance<TProps>[];
 | 
						|
}
 | 
						|
 | 
						|
export type CreateSingletonProps<TProps = Props> = TProps & {
 | 
						|
  overrides: Array<keyof TProps>;
 | 
						|
};
 | 
						|
 | 
						|
export type CreateSingletonInstance<TProps = CreateSingletonProps> = Instance<
 | 
						|
  TProps
 | 
						|
> & {
 | 
						|
  setInstances(instances: Instance<any>[]): void;
 | 
						|
  show(target?: ReferenceElement | Instance | number): void;
 | 
						|
  showNext(): void;
 | 
						|
  showPrevious(): void;
 | 
						|
};
 | 
						|
 | 
						|
export type CreateSingleton<TProps = Props> = (
 | 
						|
  tippyInstances: Instance<any>[],
 | 
						|
  optionalProps?: Partial<CreateSingletonProps<TProps>>
 | 
						|
) => CreateSingletonInstance<CreateSingletonProps<TProps>>;
 | 
						|
 | 
						|
declare const delegate: Delegate;
 | 
						|
declare const createSingleton: CreateSingleton;
 | 
						|
 | 
						|
// =============================================================================
 | 
						|
// Plugin types
 | 
						|
// =============================================================================
 | 
						|
export interface Plugin<TProps = Props> {
 | 
						|
  name?: string;
 | 
						|
  defaultValue?: any;
 | 
						|
  fn(instance: Instance<TProps>): Partial<LifecycleHooks<TProps>>;
 | 
						|
}
 | 
						|
 | 
						|
export interface AnimateFill extends Plugin {
 | 
						|
  name: 'animateFill';
 | 
						|
  defaultValue: false;
 | 
						|
}
 | 
						|
 | 
						|
export interface FollowCursor extends Plugin {
 | 
						|
  name: 'followCursor';
 | 
						|
  defaultValue: false;
 | 
						|
}
 | 
						|
 | 
						|
export interface InlinePositioning extends Plugin {
 | 
						|
  name: 'inlinePositioning';
 | 
						|
  defaultValue: false;
 | 
						|
}
 | 
						|
 | 
						|
export interface Sticky extends Plugin {
 | 
						|
  name: 'sticky';
 | 
						|
  defaultValue: false;
 | 
						|
}
 | 
						|
 | 
						|
declare const animateFill: AnimateFill;
 | 
						|
declare const followCursor: FollowCursor;
 | 
						|
declare const inlinePositioning: InlinePositioning;
 | 
						|
declare const sticky: Sticky;
 | 
						|
 | 
						|
// =============================================================================
 | 
						|
// Misc types
 | 
						|
// =============================================================================
 | 
						|
export interface HideAllOptions {
 | 
						|
  duration?: number;
 | 
						|
  exclude?: Instance | ReferenceElement;
 | 
						|
}
 | 
						|
 | 
						|
export type HideAll = (options?: HideAllOptions) => void;
 | 
						|
 | 
						|
declare const hideAll: HideAll;
 | 
						|
declare const roundArrow: string;
 | 
						|
 | 
						|
export default tippy;
 | 
						|
export {
 | 
						|
  hideAll,
 | 
						|
  delegate,
 | 
						|
  createSingleton,
 | 
						|
  animateFill,
 | 
						|
  followCursor,
 | 
						|
  inlinePositioning,
 | 
						|
  sticky,
 | 
						|
  roundArrow,
 | 
						|
};
 |