@csegames/camelot-unchained
Version:
Camelot Unchained Client Library
33 lines (32 loc) • 1.03 kB
TypeScript
/// <reference types="react" />
import * as React from 'react';
import { StyleDeclaration } from 'aphrodite';
export interface DialogStyle extends StyleDeclaration {
container: React.CSSProperties;
dialog: React.CSSProperties;
contentWrapper: React.CSSProperties;
}
export declare const defaultDialogStyle: DialogStyle;
export interface DialogProps<ContentProps> {
content: (props: ContentProps) => JSX.Element;
closeOnClickOutside?: boolean;
contentProps?: ContentProps;
style?: Partial<DialogStyle>;
}
export interface DialogState {
hidden: boolean;
closeOnClickOutside: boolean;
}
export declare class Dialog<ContentProps> extends React.Component<DialogProps<ContentProps>, DialogState> {
private mouseOver;
constructor(props: DialogProps<ContentProps>);
render(): JSX.Element;
show: () => void;
hide: () => void;
componentWillUnmount(): void;
private onMouseEnter;
private onMouseleave;
private windowMouseDown;
private clicked;
}
export default Dialog;