@procore/core-react
Version:
React library of Procore Design Guidelines
112 lines (111 loc) • 2.7 kB
TypeScript
import React from 'react';
import type { BeforeCallback } from './DelayedCallback';
import type { TimerApi } from './Timer';
/**
* @deprecatedSince 9
* @deprecated Never officially documented/supported
*/
export declare type Callback = () => void;
/**
* @deprecatedSince 9
* @deprecated Never officially documented/supported
*/
export interface DelayedToggleConfig {
/**
* @since 10.19.0
*/
beforeDisable?: BeforeCallback;
/**
* @since 10.19.0
*/
beforeEnable?: BeforeCallback;
/**
* @since 10.19.0
*/
disableDelay?: number;
/**
* @since 10.19.0
*/
enableDelay?: number;
/**
* @since 10.19.0
*/
isEnabled?: boolean;
/**
* @since 10.19.0
*/
onDisable: Callback;
/**
* @since 10.19.0
*/
onEnable: Callback;
/**
* @since 10.19.0
*/
timer?: TimerApi;
}
/**
* @deprecatedSince 9
* @deprecated Never officially documented/supported
*/
export interface DelayedToggleProps extends DelayedToggleConfig {
/**
* @since 10.19.0
*/
children: React.ReactNode;
}
interface DelayedToggleRenderProps extends DelayedToggleConfig {
/**
* @since 10.19.0
*/
children: React.ReactElement | ((props: Api) => React.ReactElement);
}
/**
* @deprecatedSince 9
* @deprecated Never officially documented/supported
*/
export interface Api {
/**
* @since 10.19.0
*/
disable: (event: any) => any;
/**
* @since 10.19.0
*/
enable: (event: any) => any;
/**
* @since 10.19.0
*/
toggle: (event: any) => any;
}
/**
* @deprecatedSince 9
* @deprecated Never officially documented/supported
*/
export declare function useDelayedToggle({ beforeDisable, beforeEnable, disableDelay, enableDelay, isEnabled, onDisable, onEnable, timer, }: DelayedToggleConfig): Api;
/**
* @deprecatedSince 9
* @deprecated Never officially documented/supported
*/
export declare const DelayedToggle: React.ForwardRefExoticComponent<DelayedToggleRenderProps & React.RefAttributes<HTMLElement>>;
/**
* @deprecatedSince 9
* @deprecated Never officially documented/supported
*/
export declare const initDelayedToggle: Api;
/**
* @deprecatedSince 9
* @deprecated Never officially documented/supported
*/
export declare const DelayedToggleContext: React.Context<Api>;
/**
* @deprecatedSince 9
* @deprecated Never officially documented/supported
*/
export declare function DelayedToggleProvider({ children, ...props }: DelayedToggleProps): React.JSX.Element;
/**
* @deprecatedSince 9
* @deprecated Never officially documented/supported
*/
export declare function useDelayedToggleContext(): Api;
export {};