import { EventEmitter, OnChanges, SimpleChanges, ChangeDetectorRef } from '@angular/core';
import { BaseAngularComponent } from '@memberjunction/ng-base-types';
import { HomeAppPinnedItem } from '@memberjunction/ng-shared';
import * as i0 from "@angular/core";
/**
 * Result emitted after the action finishes (or the dialog is cancelled).
 */
export interface ActionPinRunResult {
    Closed: true;
}
interface RuntimeField {
    Name: string;
    Value: string;
}
export declare class ActionPinRunnerDialogComponent extends BaseAngularComponent implements OnChanges {
    private cdr;
    Visible: boolean;
    Pin: HomeAppPinnedItem | null;
    Result: EventEmitter<ActionPinRunResult>;
    RuntimeFields: RuntimeField[];
    IsRunning: boolean;
    RunSucceeded: boolean | null;
    ResultMessage: string | null;
    ErrorMessage: string | null;
    constructor(cdr: ChangeDetectorRef);
    ngOnChanges(changes: SimpleChanges): void;
    private getConfig;
    private initFromPin;
    get AccentColor(): string;
    get FaIcon(): string;
    get ActionName(): string;
    CanRun(): boolean;
    Run(): Promise<void>;
    private buildActionParams;
    Close(): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<ActionPinRunnerDialogComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<ActionPinRunnerDialogComponent, "mj-action-pin-runner-dialog", never, { "Visible": { "alias": "Visible"; "required": false; }; "Pin": { "alias": "Pin"; "required": false; }; }, { "Result": "Result"; }, never, never, false, never>;
}
export {};
//# sourceMappingURL=action-pin-runner-dialog.component.d.ts.map