import { EventEmitter } from '../../../stencil-public-runtime';
import { Dispute } from '../../../components';
import { DisputeResponse as ApiDisputeResponse, IApiResponse } from '../../../api';
import JustifiAnalytics from '../../../api/Analytics';
import { ComponentErrorEvent } from '../../../api/ComponentEvents';
import { DisputeEvidenceDocument } from '../../../api/DisputeEvidenceDocument';
import { ComponentClickEvent, ComponentFormStepCompleteEvent, ComponentSubmitEvent } from '../../../api/ComponentEvents';
export declare class DisputeResponse {
    updateDisputeResponse: (args: {
        payload: any;
        onSuccess: (disputeResponse: any) => void;
        onError: (disputeResponse: any) => void;
    }) => Promise<IApiResponse<Dispute>>;
    submitDisputeResponse: (args: {
        payload: any;
        onSuccess: (disputeResponse: any) => void;
        onError: (disputeResponse: any) => void;
    }) => Promise<IApiResponse<Dispute>>;
    createDisputeEvidence: (args: {
        payload: any;
        onSuccess: (disputeResponse: any) => void;
        onError: (disputeResponse: any) => void;
    }) => Promise<IApiResponse<any>>;
    errorMessage: string;
    authToken: string;
    disputeId: string;
    disputeResponse: ApiDisputeResponse | any;
    apiOrigin?: string;
    isLoading: boolean;
    documentList: any[];
    documentErrors: {};
    currentStep: number;
    currentStepComponentRef: any;
    clickEvent: EventEmitter<ComponentClickEvent>;
    errorEvent: EventEmitter<ComponentErrorEvent>;
    stepCompleteEvent: EventEmitter<ComponentFormStepCompleteEvent>;
    submitEvent: EventEmitter<ComponentSubmitEvent>;
    analytics: JustifiAnalytics;
    componentStepMapping: (() => any)[];
    componentWillLoad(): void;
    disconnectedCallback(): void;
    propChanged(): void;
    private initializeDisputeServiceMethods;
    get currentStepComponent(): any;
    get isLastStep(): boolean;
    get isFirstStep(): boolean;
    saveData: (formData: any, formStep: any) => Promise<IApiResponse<Dispute>>;
    initializeMakePresignedURLs: () => Promise<IApiResponse<any>[]>;
    initializeFileUploads: () => Promise<Response[]>;
    getPresignedFileUrl: (document: DisputeEvidenceDocument) => Promise<IApiResponse<any>>;
    uploadDocument: (document: DisputeEvidenceDocument) => Promise<Response>;
    private handleSubmit;
    private onCancel;
    private onBack;
    private onNext;
    private onSubmit;
    render(): any;
}
