import { fetchDropDownOptions } from '../../../store/slice';
import { WriteFormFields, WriteFormState } from '../types/form';
import { ObjectItem, FormArgValue } from '../../../types/form';
import { OptionType } from '@connector/ui';
import { CustomOptionType } from './initial-state';
export declare const writeCapabilitySlice: import('@reduxjs/toolkit').Slice<import('./initial-state').WriteCapabilityState, {
    resetState: () => import('./initial-state').WriteCapabilityState;
    resetCurrentResourceDetails: (state: import('immer').WritableDraft<import('./initial-state').WriteCapabilityState>) => void;
    setCurrentCardInEdit: (state: import('immer').WritableDraft<import('./initial-state').WriteCapabilityState>, action: {
        payload: any;
        type: string;
    }) => void;
    setHasUnsavedChanges: (state: import('immer').WritableDraft<import('./initial-state').WriteCapabilityState>, action: {
        payload: any;
        type: string;
    }) => void;
}, "writeCapability", "writeCapability", import('@reduxjs/toolkit').SliceSelectors<import('./initial-state').WriteCapabilityState>>;
declare const fetchObjectList: import('@reduxjs/toolkit').AsyncThunk<{
    createObjectList: never[];
    createObjectConnectorNamesList: never[];
    linkObjectList: never[];
    editObjectList: never[];
    searchObjectList: never[];
    formFields: null;
    objectDict: null;
    dependentFieldsMap: {};
} | {
    createObjectList: CustomOptionType[];
    createObjectConnectorNamesList: string[];
    linkObjectList: OptionType[];
    editObjectList: OptionType[];
    searchObjectList: OptionType[];
    formFields: {
        [key: string]: WriteFormFields[];
    };
    objectDict: {
        [key: string]: ObjectItem;
    };
    dependentFieldsMap: {
        [key: string]: {
            [key: string]: string[];
        };
    };
}, {
    inboxIds: string[];
    channelType: string;
    conversationId: number;
    isExpandedFormEnabled: boolean;
    connectorId?: string;
}, {
    state?: unknown;
    dispatch?: import('redux-thunk').ThunkDispatch<unknown, unknown, import('redux').UnknownAction>;
    extra?: unknown;
    rejectValue?: unknown;
    serializedErrorType?: unknown;
    pendingMeta?: unknown;
    fulfilledMeta?: unknown;
    rejectedMeta?: unknown;
}>;
declare const createForm: import('@reduxjs/toolkit').AsyncThunk<undefined, {
    formId: string;
    args: {
        [key: string]: FormArgValue;
    };
    conversationId: number;
    interfaceId: string;
    successCallback?: () => void;
    failureCallback?: (err: unknown) => void;
}, {
    state?: unknown;
    dispatch?: import('redux-thunk').ThunkDispatch<unknown, unknown, import('redux').UnknownAction>;
    extra?: unknown;
    rejectValue?: unknown;
    serializedErrorType?: unknown;
    pendingMeta?: unknown;
    fulfilledMeta?: unknown;
    rejectedMeta?: unknown;
}>;
declare const updateForm: import('@reduxjs/toolkit').AsyncThunk<undefined, {
    formId: string;
    args: {
        [key: string]: FormArgValue;
    };
    conversationId: number;
    interfaceId: string;
    externalResourceId: string;
    previousArgs: {
        [key: string]: FormArgValue;
    };
    successCallback?: () => void;
    failureCallback?: (err: unknown) => void;
}, {
    state?: unknown;
    dispatch?: import('redux-thunk').ThunkDispatch<unknown, unknown, import('redux').UnknownAction>;
    extra?: unknown;
    rejectValue?: unknown;
    serializedErrorType?: unknown;
    pendingMeta?: unknown;
    fulfilledMeta?: unknown;
    rejectedMeta?: unknown;
}>;
declare const unlinkCard: import('@reduxjs/toolkit').AsyncThunk<void, {
    id: string;
    channelType?: string;
    externalResourceId: string;
    conversationId: number;
}, {
    state?: unknown;
    dispatch?: import('redux-thunk').ThunkDispatch<unknown, unknown, import('redux').UnknownAction>;
    extra?: unknown;
    rejectValue?: unknown;
    serializedErrorType?: unknown;
    pendingMeta?: unknown;
    fulfilledMeta?: unknown;
    rejectedMeta?: unknown;
}>;
declare const linkCard: import('@reduxjs/toolkit').AsyncThunk<undefined, {
    id: string;
    externalResourceId: string;
    channelType?: string;
    conversationId: number;
    email?: string;
}, {
    state?: unknown;
    dispatch?: import('redux-thunk').ThunkDispatch<unknown, unknown, import('redux').UnknownAction>;
    extra?: unknown;
    rejectValue?: unknown;
    serializedErrorType?: unknown;
    pendingMeta?: unknown;
    fulfilledMeta?: unknown;
    rejectedMeta?: unknown;
}>;
declare const fetchCurrentResourceDetails: import('@reduxjs/toolkit').AsyncThunk<{
    data: WriteFormState;
    status: number | undefined;
}, {
    id: string;
    channelType: string;
    conversationId: number;
    externalResourceId: string;
    contactEmail: string;
}, {
    state?: unknown;
    dispatch?: import('redux-thunk').ThunkDispatch<unknown, unknown, import('redux').UnknownAction>;
    extra?: unknown;
    rejectValue?: unknown;
    serializedErrorType?: unknown;
    pendingMeta?: unknown;
    fulfilledMeta?: unknown;
    rejectedMeta?: unknown;
}>;
declare const resetState: import('@reduxjs/toolkit').ActionCreatorWithoutPayload<"writeCapability/resetState">, setCurrentCardInEdit: import('@reduxjs/toolkit').ActionCreatorWithPayload<any, "writeCapability/setCurrentCardInEdit">, resetCurrentResourceDetails: import('@reduxjs/toolkit').ActionCreatorWithoutPayload<"writeCapability/resetCurrentResourceDetails">, setHasUnsavedChanges: import('@reduxjs/toolkit').ActionCreatorWithPayload<any, "writeCapability/setHasUnsavedChanges">;
declare const _default: import('redux').Reducer<import('./initial-state').WriteCapabilityState>;
export default _default;
export { fetchObjectList, resetState, fetchDropDownOptions, createForm, linkCard, unlinkCard, updateForm, fetchCurrentResourceDetails, setCurrentCardInEdit, resetCurrentResourceDetails, setHasUnsavedChanges };
//# sourceMappingURL=slice.d.ts.map