UNPKG

@kwiz/fluentui

Version:
38 lines (37 loc) 1.4 kB
import { MutableRefObject } from "react"; import { iPleaseWaitProps } from "../controls/please-wait"; export interface iTrackChanges { hasChanges: boolean; hasChangesRef: MutableRefObject<boolean>; setHasChanges: (newValue: boolean) => Promise<boolean>; onSaveChanges: (worker: () => Promise<{ success: boolean; message?: string; }>, props?: { waitProps?: iPleaseWaitProps; }) => Promise<void>; /** if there are changes, prompt the user. otherwise just call handler. */ doIfNoChanges: <ReturnType>(handler: () => ReturnType) => ReturnType; } export declare function useTrackChanges({ blockNav }?: { blockNav?: boolean; }): { trackChanges: iTrackChanges; /** include in your react control */ trackChangesElement: JSX.Element; }; /** @deprecated renamed to useTrackChanges */ export declare function useEditableControl(): { editablePageElement: JSX.Element; hasChanges: boolean; hasChangesRef: MutableRefObject<boolean>; setHasChanges: (newValue: boolean) => Promise<boolean>; onSaveChanges: (worker: () => Promise<{ success: boolean; message?: string; }>, props?: { waitProps?: iPleaseWaitProps; }) => Promise<void>; /** if there are changes, prompt the user. otherwise just call handler. */ doIfNoChanges: <ReturnType>(handler: () => ReturnType) => ReturnType; };