@fluent-windows/hooks
Version:
Fluent-Windows React hooks.
40 lines (39 loc) • 1.03 kB
TypeScript
/**
* Toast using functional calls
*
* Demo
* import { useMessage } from '@fluent-windows/hooks'
*
const [handleOpen, handleClose] = useMessage(
(visible, content, close) => (
<Toast
visible={visible}
actions={
<IconButton onClick={close}>
<Icon.Cancel />
</IconButton>
}
>
{content}
</Toast>
),
0
)
function handleClick() {
handleOpen('hello world!')
}
return (
<>
<Button onClick={handleClick}>open</Button>
<Button onClick={handleClose}>close</Button>
</>
)
*/
import * as React from 'react';
declare type Open = (content: React.ReactChild) => void;
declare type Close = () => void;
declare type FunctionContainer = (visible: boolean, content: React.ReactChild, close: Close) => React.ReactElement;
declare type Duration = number;
declare type Return = [Open, Close];
declare function useMessage(functionContainer: FunctionContainer, duration?: Duration): Return;
export default useMessage;