import type { Result } from '@coveo/headless';
import { LitElement } from 'lit';
import type { InsightBindings } from '../atomic-insight-interface/atomic-insight-interface';
import type { InitializableComponent } from '../../../decorators/types';
export interface InsightResultActionClickedEvent {
    action: string;
    result: Result;
}
export declare enum Actions {
    CopyToClipboard = "copyToClipboard",
    AttachToCase = "attachToCase",
    Quickview = "quickview",
    PostToFeed = "postToFeed",
    SendAsEmail = "sendAsEmail"
}
declare const AtomicInsightResultAction_base: import("../../../mixins/mixin-common").Constructor<{
    injectStyles(dynamicStyles?: import("lit").CSSResultGroup): Promise<void>;
}> & typeof LitElement;
/**
 * The `atomic-insight-result-action` component renders an interactive action button for insight results.
 *
 * @part result-action-container - The result action container
 * @part result-action-button - The result action button
 * @part result-action-icon - The result action icon
 * @event atomicInsightResultActionClicked - Fired when the action button is clicked. The event detail contains the action type and the result object.
 */
export declare class AtomicInsightResultAction extends AtomicInsightResultAction_base implements InitializableComponent<InsightBindings> {
    static styles: import("lit").CSSResult;
    /**
     * The result action icon to display.
     */
    icon: string;
    /**
     * The text tooltip to show on the result action icon.
     */
    tooltip: string;
    /**
     * The text tooltip to show on the result action icon for some time after clicking the button.
     */
    tooltipOnClick: string;
    /**
     * The type of action to perform when the result action is clicked.
     * This will be sent along the event fired when the button is clicked.
     */
    action: Actions | string;
    bindings: InsightBindings;
    error: Error;
    private currentTooltip;
    private itemContextController;
    private actions;
    private tooltipResetTimeout?;
    constructor();
    disconnectedCallback(): void;
    private get result();
    initialize(): void;
    private onClick;
    private getIcon;
    render(): typeof import("lit-html").nothing | import("lit-html").TemplateResult | null;
}
declare global {
    interface HTMLElementTagNameMap {
        'atomic-insight-result-action': AtomicInsightResultAction;
    }
}
export {};
