import type { UmbEntityActionArgs } from './types.js';
import type { UmbEntityAction } from './entity-action.interface.js';
import { UmbActionBase } from '../action/index.js';
/**
 * Base class for an entity action.
 * @abstract
 * @class UmbEntityActionBase
 * @augments {UmbActionBase}
 * @implements {UmbEntityAction}
 * @template RepositoryType
 */
export declare abstract class UmbEntityActionBase<ArgsMetaType> extends UmbActionBase<UmbEntityActionArgs<ArgsMetaType>> implements UmbEntityAction<ArgsMetaType> {
    /**
     * By specifying the href, the action will act as a link.
     * The `execute` method will not be called.
     * @abstract
     * @returns {string | undefined}
     */
    getHref(): Promise<string | undefined>;
    /**
     * By specifying the `execute` method, the action will act as a button.
     * @abstract
     * @returns {Promise<void>}
     */
    execute(): Promise<void>;
}
