import { PropType } from 'vue';
import { XEventsTypes } from '../wiring/events.types';
import { WireMetadata } from '../wiring/index';
/**
 * Component to be reused that renders a `<button>` with the logic of emitting events to the bus
 * on click. The events are passed as an object to prop {@link XEvent}.
 * The keys are the event name and the values are the payload of each event. All events are
 * emitted with its respective payload. If any event doesn't need payload a `undefined` must be
 * passed as value.
 *
 * @public
 */
declare const _default: import("vue").DefineComponent<{
    /** An object where the keys are the {@link XEvent} and the values are the payload. */
    events: {
        type: PropType<Partial<XEventsTypes>>;
        required: true;
    };
    /**
     * The metadata property for the request on each query preview.
     *
     * @public
     */
    metadata: {
        type: PropType<Omit<WireMetadata, "moduleName">>;
    };
}, {
    emitEvents: () => void;
    rootRef: import("vue").Ref<HTMLButtonElement | undefined>;
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
    /** An object where the keys are the {@link XEvent} and the values are the payload. */
    events: {
        type: PropType<Partial<XEventsTypes>>;
        required: true;
    };
    /**
     * The metadata property for the request on each query preview.
     *
     * @public
     */
    metadata: {
        type: PropType<Omit<WireMetadata, "moduleName">>;
    };
}>>, {}, {}>;
export default _default;
//# sourceMappingURL=base-event-button.vue?vue&type=script&lang.d.ts.map