import type { TypographyProps } from './Typography';
import type { AutoSizeType } from '../input/ResizableTextArea';
import type { EventHandler } from '../_util/EventInterface';
export declare type BaseType = 'secondary' | 'success' | 'warning' | 'danger';
export interface CopyConfig {
    text?: string;
    onCopy?: () => void;
    tooltip?: boolean;
}
export interface EditConfig {
    editing?: boolean;
    tooltip?: boolean;
    onStart?: () => void;
    onChange?: (value: string) => void;
    onCancel?: () => void;
    onEnd?: () => void;
    maxlength?: number;
    autoSize?: boolean | AutoSizeType;
}
export interface EllipsisConfig {
    rows?: number;
    expandable?: boolean;
    suffix?: string;
    symbol?: string;
    onExpand?: EventHandler;
    onEllipsis?: (ellipsis: boolean) => void;
    tooltip?: boolean;
}
export interface BlockProps extends TypographyProps {
    title?: string;
    editable?: boolean | EditConfig;
    copyable?: boolean | CopyConfig;
    type?: BaseType;
    disabled?: boolean;
    ellipsis?: boolean | EllipsisConfig;
    code?: boolean;
    mark?: boolean;
    underline?: boolean;
    delete?: boolean;
    strong?: boolean;
    keyboard?: boolean;
    content?: string;
}
interface InternalBlockProps extends BlockProps {
    component: string;
}
declare const Base: import("vue").DefineComponent<InternalBlockProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, import("vue").EmitsOptions, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<InternalBlockProps>, {
    onCopy: any;
    onCut: any;
    onPaste: any;
    onCompositionend: any;
    onCompositionstart: any;
    onCompositionupdate: any;
    onDrag: any;
    onDragend: any;
    onDragenter: any;
    onDragexit: any;
    onDragleave: any;
    onDragover: any;
    onDragstart: any;
    onDrop: any;
    onFocus: any;
    onFocusin: any;
    onFocusout: any;
    onBlur: any;
    onChange: any;
    onBeforeinput: any;
    onInput: any;
    onReset: any;
    onSubmit: any;
    onInvalid: any;
    onLoad: any;
    onError: any;
    onKeydown: any;
    onKeypress: any;
    onKeyup: any;
    onAuxclick: any;
    onClick: any;
    onContextmenu: any;
    onDblclick: any;
    onMousedown: any;
    onMouseenter: any;
    onMouseleave: any;
    onMousemove: any;
    onMouseout: any;
    onMouseover: any;
    onMouseup: any;
    onAbort: any;
    onCanplay: any;
    onCanplaythrough: any;
    onDurationchange: any;
    onEmptied: any;
    onEncrypted: any;
    onEnded: any;
    onLoadeddata: any;
    onLoadedmetadata: any;
    onLoadstart: any;
    onPause: any;
    onPlay: any;
    onPlaying: any;
    onProgress: any;
    onRatechange: any;
    onSeeked: any;
    onSeeking: any;
    onStalled: any;
    onSuspend: any;
    onTimeupdate: any;
    onVolumechange: any;
    onWaiting: any;
    onSelect: any;
    onScroll: any;
    onTouchcancel: any;
    onTouchend: any;
    onTouchmove: any;
    onTouchstart: any;
    onPointerdown: any;
    onPointermove: any;
    onPointerup: any;
    onPointercancel: any;
    onPointerenter: any;
    onPointerleave: any;
    onPointerover: any;
    onPointerout: any;
    onWheel: any;
    onAnimationstart: any;
    onAnimationend: any;
    onAnimationiteration: any;
    onTransitionend: any;
    onTransitionstart: any;
    class: any;
    inlist: any;
}>;
export declare const baseProps: () => {
    editable: import("vue-types").VueTypeDef<boolean | {
        [key: string]: any;
    }>;
    copyable: import("vue-types").VueTypeDef<boolean | {
        [key: string]: any;
    }>;
    prefixCls: import("vue-types").VueTypeValidableDef<string> & {
        default: string;
    };
    component: import("vue-types").VueTypeValidableDef<string> & {
        default: string;
    };
    type: import("vue-types").VueTypeDef<string>;
    disabled: import("vue-types").VueTypeValidableDef<boolean>;
    ellipsis: import("vue-types").VueTypeDef<boolean | {
        [key: string]: any;
    }>;
    code: import("vue-types").VueTypeValidableDef<boolean>;
    mark: import("vue-types").VueTypeValidableDef<boolean>;
    underline: import("vue-types").VueTypeValidableDef<boolean>;
    delete: import("vue-types").VueTypeValidableDef<boolean>;
    strong: import("vue-types").VueTypeValidableDef<boolean>;
    keyboard: import("vue-types").VueTypeValidableDef<boolean>;
    content: import("vue-types").VueTypeValidableDef<string> & {
        default: string;
    };
};
export default Base;
