import type { Action } from '../Actions';
import type { AbstractMixable } from '../Contracts';
import type AvonRequest from '../Http/Requests/AvonRequest';
declare const _default: <T extends AbstractMixable = AbstractMixable>(Parent: T) => (abstract new (...args: import("../Contracts").Args) => {
    /**
     * Get the actions that are available for the given request.
     */
    availableActions(request: AvonRequest): Action[];
    /**
     * Get the actions for the given request.
     */
    resolveActions(request: AvonRequest): Action[];
    /**
     * Get the actions available on the entity.
     */
    actions(request: AvonRequest): Action[];
}) & T;
export default _default;
