/**
 * This file is part of the NocoBase (R) project.
 * Copyright (c) 2020-2024 NocoBase Co., Ltd.
 * Authors: NocoBase Team.
 *
 * This project is dual-licensed under AGPL-3.0 and NocoBase Commercial License.
 * For more information, please refer to: https://www.nocobase.com/agreement.
 */
import { FC } from 'react';
type OpenMode = 'drawer' | 'page' | 'modal';
interface OpenModeProviderProps {
    /**
     * @default 'drawer'
     * open mode 的全局默认值
     */
    defaultOpenMode?: OpenMode;
    /**
     * @default { drawer: ActionDrawer, page: ActionPage, modal: ActionModal }
     * 根据 open mode 获取对应的组件
     */
    openModeToComponent?: Partial<Record<OpenMode, any>>;
    /**
     * @default false
     * 隐藏 open mode 的配置选项
     */
    hideOpenMode?: boolean;
    /**
     * @default false
     * 是否为Mobile路由下
     */
    isMobile?: boolean;
}
/**
 * 为按钮的 Open mode 选项提供上下文
 * @param props
 * @returns
 */
export declare const OpenModeProvider: FC<OpenModeProviderProps>;
export declare const useOpenModeContext: () => {
    defaultOpenMode: OpenModeProviderProps['defaultOpenMode'];
    hideOpenMode: boolean;
    getComponentByOpenMode: (openMode: OpenMode) => any;
    isMobile: boolean;
};
export {};
