import { default as React, MouseEvent } from 'react';
import { BaseEventOrig } from '@tarojs/components/types/common';
import { BasicComponent } from '../../utils/typings';
export type SwipeSide = 'left' | 'right';
export interface SwipeInstance {
    open: (side: SwipeSide) => void;
    close: () => void;
}
export interface SwipeProps extends BasicComponent {
    name?: string | number;
    leftAction?: React.ReactNode;
    rightAction?: React.ReactNode;
    /** 关闭前的回调函数，返回 false 可阻止关闭，支持返回 Promise */
    beforeClose?: (position: string) => void;
    disabled?: boolean;
    onOpen?: ({ name, position, }: {
        name: string | number;
        position: SwipeSide;
    }) => void;
    onClose?: ({ name, position, }: {
        name: string | number;
        position: SwipeSide;
    }) => void;
    onActionClick?: (event: MouseEvent<HTMLDivElement>, position: SwipeSide) => void;
    onTouchStart?: (event: BaseEventOrig<HTMLDivElement>) => void;
    onTouchEnd?: (event: BaseEventOrig<HTMLDivElement>) => void;
    onTouchMove?: (event: BaseEventOrig<HTMLDivElement>) => void;
}
export declare const Swipe: React.ForwardRefExoticComponent<Partial<SwipeProps> & Omit<React.HTMLAttributes<HTMLDivElement>, "onTouchEnd" | "onTouchMove" | "onTouchStart"> & React.RefAttributes<SwipeInstance>>;
