@alicloudfe/components
Version:
A react component library for aliyun
85 lines (84 loc) • 2.45 kB
TypeScript
import React from 'react';
import { Drawer as NextDrawer } from '@alifd/next';
import { ButtonProps } from '@alifd/next/types/button';
declare type NextDrawerProps = React.ComponentProps<typeof NextDrawer>;
interface IDrawer {
/**
* 点击确定按钮时的回调。有此参数就默认显示确定按钮
*/
onOk?: (event: React.MouseEvent) => void | boolean;
/**
* 点击取消按钮时的回调。有此参数就默认显示取消按钮
*/
onCancel?: (event: React.MouseEvent) => void | boolean;
/**
* 完全自定义底部操作栏
*/
renderFooter?: React.ReactNode;
/**
* 是否有底部分割线
*/
hasFooterLine?: boolean;
/**
* 底部按钮位置
*/
footerAlign?: 'left' | 'center' | 'right';
/**
* 取消按钮的文字
*/
cancelText?: React.ReactNode;
/**
* 确定按钮的文字
*/
okText?: React.ReactNode;
/**
* 透传给取消按钮的Props
*/
cancelBtnProps?: ButtonProps;
/**
* 透传给确定按钮的Props
*/
okBtnProps?: ButtonProps;
/**
* 给footer增加className
*/
footerClass?: string;
/**
* 抽屉大小,也可以直接传入width自定义
*/
size?: 'mini' | 'small' | 'medium' | 'large';
/**
* 侧边栏(yunxiao)
*/
sidebar?: React.ReactNode;
/**
* 引用方法
*/
actionRef?: (show: () => void, close: () => void, setOKLoading: (loading: boolean) => void, setCancelLoading: (loading: boolean) => void) => void;
className?: string;
/** extra 区域 **/
extra?: React.ReactNode;
}
export declare type DrawerProps = NextDrawerProps & IDrawer;
export declare type quickShowDrawerProps = Omit<DrawerProps, 'onOk' | 'onCancel'> & {
/**
* 点击确定按钮时的回调。有此参数就默认显示确定按钮
*/
onOk?: ((event: React.MouseEvent) => boolean | Promise<any>) | boolean;
/**
* 点击取消按钮时的回调。有此参数就默认显示取消按钮
*/
onCancel?: ((event: React.MouseEvent) => boolean | Promise<any>) | boolean;
/**
* 抽屉内容
*/
content?: React.ReactNode;
};
export declare type QuickShowDrawerRet = {
hide: () => void;
show: () => void;
};
declare const Drawer: React.FC<DrawerProps> & {
show: (config: quickShowDrawerProps) => QuickShowDrawerRet;
};
export default Drawer;