@alifd/meet-react
Version:
Fusion Mobile React UI System Component
44 lines (43 loc) • 1.42 kB
TypeScript
import { CSSProperties, HTMLAttributes, ReactNode, ReactNodeArray } from 'react';
type KnownKeys<T> = {
[K in keyof T]: string extends K ? never : number extends K ? never : K;
} extends {
[_ in keyof T]: infer U;
} ? U : never;
type RemoveIndexSignature<T> = Pick<T, keyof T & KnownKeys<T>>;
type FixAnyHTMLAttributes = RemoveIndexSignature<HTMLAttributes<HTMLElement>>;
type NoDefaultValueHTMLAttributes = Omit<FixAnyHTMLAttributes, 'defaultValue'>;
export interface HTMLAttributesWeak extends NoDefaultValueHTMLAttributes {
id?: any;
style?: CSSProperties;
onChange?: any;
onClick?: any;
onFocus?: any;
onBlur?: any;
onSubmit?: any;
onSelect?: any;
onError?: any;
}
export declare function isPromise<T>(obj: any): obj is Promise<T>;
export interface BaseComponentAttributes extends HTMLAttributesWeak {
prefix?: string;
className?: string;
}
export type BasicSizeType = 'small' | 'medium' | 'large';
export type BasicDirectionType = 'hoz' | 'ver';
export interface BaseFieldPreviewProps {
isPreview?: boolean;
renderPreview?: (value?: any) => ReactNode | ReactNodeArray;
previewClassName?: string;
previewStyle?: CSSProperties;
}
export interface DataSourceItemProps {
label?: string;
text?: string;
value?: any;
disabled?: boolean;
checked?: boolean;
style?: CSSProperties;
children?: DataSourceItemProps[];
}
export {};