import type { Result } from '../../api/search/search/result.js';
import type { GeneratedAnswerCitation } from '../../index.js';
export declare const logCaseAttach: (result: Result) => ((arg?: undefined, config?: import("@reduxjs/toolkit").AsyncThunkDispatchConfig) => import("@reduxjs/toolkit").AsyncThunkAction<void, void, {
    state: import("../../api/analytics/insight-analytics.js").StateNeededByInsightAnalyticsProvider;
    extra: import("../../app/thunk-extra-arguments.js").ThunkExtraArguments;
}>) & {
    pending: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[string, void, unknown?], undefined, string, never, {
        arg: void;
        requestId: string;
        requestStatus: "pending";
    }>;
    rejected: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[Error | null, string, void, unknown?, unknown?], unknown, string, import("@reduxjs/toolkit").SerializedError, {
        arg: void;
        requestId: string;
        requestStatus: "rejected";
        aborted: boolean;
        condition: boolean;
    } & ({
        rejectedWithValue: true;
    } | ({
        rejectedWithValue: false;
    } & {}))>;
    fulfilled: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[void, string, void, unknown?], void, string, never, {
        arg: void;
        requestId: string;
        requestStatus: "fulfilled";
    }>;
    settled: (action: any) => action is import("@reduxjs/toolkit").PayloadAction<void, string, {
        arg: void;
        requestId: string;
        requestStatus: "fulfilled";
    }, never> | import("@reduxjs/toolkit").PayloadAction<unknown, string, {
        arg: void;
        requestId: string;
        requestStatus: "rejected";
        aborted: boolean;
        condition: boolean;
    } & ({
        rejectedWithValue: true;
    } | ({
        rejectedWithValue: false;
    } & {})), import("@reduxjs/toolkit").SerializedError>;
    typePrefix: string;
} & import("@reduxjs/toolkit").UnknownAction & {
    prepare: (options: {
        analyticsClientMiddleware: import("coveo.analytics/dist/definitions/client/analytics.js").AnalyticsClientSendEventHook;
        preprocessRequest: import("../../api/preprocess-request.js").PreprocessRequest | undefined;
        logger: import("pino").Logger;
        getState(): import("../../api/analytics/insight-analytics.js").StateNeededByInsightAnalyticsProvider;
    }) => Promise<{
        description?: import("coveo.analytics").EventDescription;
        action: import("../analytics/analytics-utils.js").AnalyticsAsyncThunk<import("../../api/analytics/insight-analytics.js").StateNeededByInsightAnalyticsProvider>;
    }>;
};
export declare const logCaseDetach: (result: Result) => ((arg?: undefined, config?: import("@reduxjs/toolkit").AsyncThunkDispatchConfig) => import("@reduxjs/toolkit").AsyncThunkAction<void, void, {
    state: import("../../api/analytics/insight-analytics.js").StateNeededByInsightAnalyticsProvider;
    extra: import("../../app/thunk-extra-arguments.js").ThunkExtraArguments;
}>) & {
    pending: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[string, void, unknown?], undefined, string, never, {
        arg: void;
        requestId: string;
        requestStatus: "pending";
    }>;
    rejected: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[Error | null, string, void, unknown?, unknown?], unknown, string, import("@reduxjs/toolkit").SerializedError, {
        arg: void;
        requestId: string;
        requestStatus: "rejected";
        aborted: boolean;
        condition: boolean;
    } & ({
        rejectedWithValue: true;
    } | ({
        rejectedWithValue: false;
    } & {}))>;
    fulfilled: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[void, string, void, unknown?], void, string, never, {
        arg: void;
        requestId: string;
        requestStatus: "fulfilled";
    }>;
    settled: (action: any) => action is import("@reduxjs/toolkit").PayloadAction<void, string, {
        arg: void;
        requestId: string;
        requestStatus: "fulfilled";
    }, never> | import("@reduxjs/toolkit").PayloadAction<unknown, string, {
        arg: void;
        requestId: string;
        requestStatus: "rejected";
        aborted: boolean;
        condition: boolean;
    } & ({
        rejectedWithValue: true;
    } | ({
        rejectedWithValue: false;
    } & {})), import("@reduxjs/toolkit").SerializedError>;
    typePrefix: string;
} & import("@reduxjs/toolkit").UnknownAction & {
    prepare: (options: {
        analyticsClientMiddleware: import("coveo.analytics/dist/definitions/client/analytics.js").AnalyticsClientSendEventHook;
        preprocessRequest: import("../../api/preprocess-request.js").PreprocessRequest | undefined;
        logger: import("pino").Logger;
        getState(): import("../../api/analytics/insight-analytics.js").StateNeededByInsightAnalyticsProvider;
    }) => Promise<{
        description?: import("coveo.analytics").EventDescription;
        action: import("../analytics/analytics-utils.js").AnalyticsAsyncThunk<import("../../api/analytics/insight-analytics.js").StateNeededByInsightAnalyticsProvider>;
    }>;
};
export declare const logCitationDocumentAttach: (citation: GeneratedAnswerCitation) => ((arg?: undefined, config?: import("@reduxjs/toolkit").AsyncThunkDispatchConfig) => import("@reduxjs/toolkit").AsyncThunkAction<void, void, {
    state: import("../../api/analytics/insight-analytics.js").StateNeededByInsightAnalyticsProvider;
    extra: import("../../app/thunk-extra-arguments.js").ThunkExtraArguments;
}>) & {
    pending: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[string, void, unknown?], undefined, string, never, {
        arg: void;
        requestId: string;
        requestStatus: "pending";
    }>;
    rejected: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[Error | null, string, void, unknown?, unknown?], unknown, string, import("@reduxjs/toolkit").SerializedError, {
        arg: void;
        requestId: string;
        requestStatus: "rejected";
        aborted: boolean;
        condition: boolean;
    } & ({
        rejectedWithValue: true;
    } | ({
        rejectedWithValue: false;
    } & {}))>;
    fulfilled: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[void, string, void, unknown?], void, string, never, {
        arg: void;
        requestId: string;
        requestStatus: "fulfilled";
    }>;
    settled: (action: any) => action is import("@reduxjs/toolkit").PayloadAction<void, string, {
        arg: void;
        requestId: string;
        requestStatus: "fulfilled";
    }, never> | import("@reduxjs/toolkit").PayloadAction<unknown, string, {
        arg: void;
        requestId: string;
        requestStatus: "rejected";
        aborted: boolean;
        condition: boolean;
    } & ({
        rejectedWithValue: true;
    } | ({
        rejectedWithValue: false;
    } & {})), import("@reduxjs/toolkit").SerializedError>;
    typePrefix: string;
} & import("@reduxjs/toolkit").UnknownAction & {
    prepare: (options: {
        analyticsClientMiddleware: import("coveo.analytics/dist/definitions/client/analytics.js").AnalyticsClientSendEventHook;
        preprocessRequest: import("../../api/preprocess-request.js").PreprocessRequest | undefined;
        logger: import("pino").Logger;
        getState(): import("../../api/analytics/insight-analytics.js").StateNeededByInsightAnalyticsProvider;
    }) => Promise<{
        description?: import("coveo.analytics").EventDescription;
        action: import("../analytics/analytics-utils.js").AnalyticsAsyncThunk<import("../../api/analytics/insight-analytics.js").StateNeededByInsightAnalyticsProvider>;
    }>;
};
export declare const logCitationDocumentDetach: (citation: GeneratedAnswerCitation) => ((arg?: undefined, config?: import("@reduxjs/toolkit").AsyncThunkDispatchConfig) => import("@reduxjs/toolkit").AsyncThunkAction<void, void, {
    state: import("../../api/analytics/insight-analytics.js").StateNeededByInsightAnalyticsProvider;
    extra: import("../../app/thunk-extra-arguments.js").ThunkExtraArguments;
}>) & {
    pending: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[string, void, unknown?], undefined, string, never, {
        arg: void;
        requestId: string;
        requestStatus: "pending";
    }>;
    rejected: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[Error | null, string, void, unknown?, unknown?], unknown, string, import("@reduxjs/toolkit").SerializedError, {
        arg: void;
        requestId: string;
        requestStatus: "rejected";
        aborted: boolean;
        condition: boolean;
    } & ({
        rejectedWithValue: true;
    } | ({
        rejectedWithValue: false;
    } & {}))>;
    fulfilled: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[void, string, void, unknown?], void, string, never, {
        arg: void;
        requestId: string;
        requestStatus: "fulfilled";
    }>;
    settled: (action: any) => action is import("@reduxjs/toolkit").PayloadAction<void, string, {
        arg: void;
        requestId: string;
        requestStatus: "fulfilled";
    }, never> | import("@reduxjs/toolkit").PayloadAction<unknown, string, {
        arg: void;
        requestId: string;
        requestStatus: "rejected";
        aborted: boolean;
        condition: boolean;
    } & ({
        rejectedWithValue: true;
    } | ({
        rejectedWithValue: false;
    } & {})), import("@reduxjs/toolkit").SerializedError>;
    typePrefix: string;
} & import("@reduxjs/toolkit").UnknownAction & {
    prepare: (options: {
        analyticsClientMiddleware: import("coveo.analytics/dist/definitions/client/analytics.js").AnalyticsClientSendEventHook;
        preprocessRequest: import("../../api/preprocess-request.js").PreprocessRequest | undefined;
        logger: import("pino").Logger;
        getState(): import("../../api/analytics/insight-analytics.js").StateNeededByInsightAnalyticsProvider;
    }) => Promise<{
        description?: import("coveo.analytics").EventDescription;
        action: import("../analytics/analytics-utils.js").AnalyticsAsyncThunk<import("../../api/analytics/insight-analytics.js").StateNeededByInsightAnalyticsProvider>;
    }>;
};
