@csegames/camelot-unchained
Version:
Camelot Unchained Client Library
40 lines (39 loc) • 1.27 kB
TypeScript
/// <reference types="react" />
import * as React from 'react';
export interface ConfirmDialogStyle {
container: React.CSSProperties;
dialog: React.CSSProperties;
content: React.CSSProperties;
buttons: React.CSSProperties;
confirmButton: React.CSSProperties;
cancelButton: React.CSSProperties;
}
export interface ConfirmDialogProps<ContentProps> {
onConfirm: () => void;
onCancel: () => void;
content: (props: ContentProps) => JSX.Element;
cancelOnClickOutside?: boolean;
contentProps?: ContentProps;
style?: Partial<ConfirmDialogStyle>;
confirmButtonContent?: JSX.Element | string;
cancelButtonContent?: JSX.Element | string;
}
export interface ConfirmDialogState {
hidden: boolean;
cancelOnClickOutside: boolean;
}
export declare class ConfirmDialog<ContentProps> extends React.Component<ConfirmDialogProps<ContentProps>, ConfirmDialogState> {
private mouseOver;
constructor(props: ConfirmDialogProps<ContentProps>);
render(): JSX.Element;
show: () => void;
hide: () => void;
componentWillUnmount(): void;
private confirm;
private cancel;
private onMouseEnter;
private onMouseleave;
private windowMouseDown;
private clicked;
}
export default ConfirmDialog;