UNPKG

zarm

Version:

基于 React 的移动端UI库

39 lines (38 loc) 2.22 kB
import React from 'react'; import type { HTMLProps } from '../utils/utilityTypes'; import type { BaseButtonProps, ButtonShape, ButtonSize, ButtonTheme } from './interface'; export type { ButtonTheme, ButtonSize, ButtonShape }; export interface ButtonCssVars { '--height'?: React.CSSProperties['height']; '--background'?: React.CSSProperties['background']; '--border-radius'?: React.CSSProperties['borderRadius']; '--border-color'?: React.CSSProperties['borderColor']; '--border-width'?: React.CSSProperties['borderWidth']; '--padding-horizontal'?: React.CSSProperties['paddingLeft']; '--text-color'?: React.CSSProperties['color']; '--font-size'?: React.CSSProperties['fontSize']; '--icon-size'?: React.CSSProperties['fontSize']; '--loading-color'?: React.CSSProperties['color']; '--active-background'?: React.CSSProperties['background']; '--active-border-color'?: React.CSSProperties['borderColor']; '--active-text-color'?: React.CSSProperties['color']; '--active-loading-color'?: React.CSSProperties['color']; '--shadow'?: React.CSSProperties['boxShadow']; } export declare type AnchorButtonProps = { mimeType?: string; onClick?: React.MouseEventHandler<HTMLAnchorElement>; } & BaseButtonProps & HTMLProps<ButtonCssVars> & Omit<React.AnchorHTMLAttributes<HTMLAnchorElement>, 'type' | 'onClick'>; export declare type NativeButtonProps = { htmlType?: 'button' | 'submit' | 'reset'; onClick?: React.MouseEventHandler<HTMLButtonElement>; } & BaseButtonProps & HTMLProps<ButtonCssVars> & Omit<React.ButtonHTMLAttributes<HTMLButtonElement>, 'type' | 'onClick'>; export declare type ButtonProps = Partial<AnchorButtonProps & NativeButtonProps>; declare const Button: React.ForwardRefExoticComponent<Partial<{ mimeType?: string; onClick?: React.MouseEventHandler<HTMLAnchorElement>; } & BaseButtonProps & HTMLProps<ButtonCssVars> & Omit<React.AnchorHTMLAttributes<HTMLAnchorElement>, "type" | "onClick"> & { htmlType?: 'button' | 'submit' | 'reset'; onClick?: React.MouseEventHandler<HTMLButtonElement>; } & Omit<React.ButtonHTMLAttributes<HTMLButtonElement>, "type" | "onClick">> & React.RefAttributes<unknown>>; export default Button;