import { Dispatch } from '@reduxjs/toolkit';
import { IFileInfoResponse, IMultilineMessage, INodeInfo, ITab, WebformState } from '@ws-ui/shared';
import { AppState } from '..';
import { ClassFileTypes, TActionRenameDataSource } from './types';
export declare const fetchFiles: import('@reduxjs/toolkit').AsyncThunk<{
    name: string;
    type: import('@ws-ui/shared').FileFolderTypeWithContent;
    date: string;
    path: string;
}[], void, {
    state?: unknown;
    dispatch?: Dispatch;
    extra?: unknown;
    rejectValue?: unknown;
    serializedErrorType?: unknown;
    pendingMeta?: unknown;
    fulfilledMeta?: unknown;
    rejectedMeta?: unknown;
}>;
/**
 * handles the rename of a datasource.
 *
 * - if the datasource is a local datasource, it will rename it along with it's references in component and other datasources.
 * - if the datasource is a shared datasource, it will do the same as above but only for current webform.
 */
export declare const renameDataSource: import('@reduxjs/toolkit').AsyncThunk<{
    path: string | undefined;
    namespace: string;
    datasources: datasources.ICreateDataSource[];
} | null, TActionRenameDataSource, {
    state?: unknown;
    dispatch?: Dispatch;
    extra?: unknown;
    rejectValue?: unknown;
    serializedErrorType?: unknown;
    pendingMeta?: unknown;
    fulfilledMeta?: unknown;
    rejectedMeta?: unknown;
}>;
export declare const editDataSource: import('@reduxjs/toolkit').AsyncThunk<(datasources.ICreateDataSourceScalar | datasources.ICreateDataSourceEntity | datasources.ICreateDataSourceEntitySelection)[], {
    path: string;
    datasourceId: string;
    namespace?: string;
    propertyKey: string;
    value: any;
}, {
    state?: unknown;
    dispatch?: Dispatch;
    extra?: unknown;
    rejectValue?: unknown;
    serializedErrorType?: unknown;
    pendingMeta?: unknown;
    fulfilledMeta?: unknown;
    rejectedMeta?: unknown;
}>;
export declare const fetchChanges: import('@reduxjs/toolkit').AsyncThunk<IFileInfoResponse, void, {
    state: AppState;
    extra?: unknown;
    dispatch?: Dispatch | undefined;
    rejectValue?: unknown;
    serializedErrorType?: unknown;
    pendingMeta?: unknown;
    fulfilledMeta?: unknown;
    rejectedMeta?: unknown;
}>;
export declare const saveAll: import('@reduxjs/toolkit').AsyncThunk<void, void, {
    state: AppState;
    extra?: unknown;
    dispatch?: Dispatch | undefined;
    rejectValue?: unknown;
    serializedErrorType?: unknown;
    pendingMeta?: unknown;
    fulfilledMeta?: unknown;
    rejectedMeta?: unknown;
}>;
export declare const tryCloseTab: import('@reduxjs/toolkit').AsyncThunk<boolean, string, {
    state: AppState;
    extra?: unknown;
    dispatch?: Dispatch | undefined;
    rejectValue?: unknown;
    serializedErrorType?: unknown;
    pendingMeta?: unknown;
    fulfilledMeta?: unknown;
    rejectedMeta?: unknown;
}>;
export declare const tryCloseOtherTabs: import('@reduxjs/toolkit').AsyncThunk<void, string, {
    state: AppState;
    extra?: unknown;
    dispatch?: Dispatch | undefined;
    rejectValue?: unknown;
    serializedErrorType?: unknown;
    pendingMeta?: unknown;
    fulfilledMeta?: unknown;
    rejectedMeta?: unknown;
}>;
export declare const tryCloseAllTabs: import('@reduxjs/toolkit').AsyncThunk<void, void, {
    state: AppState;
    extra?: unknown;
    dispatch?: Dispatch | undefined;
    rejectValue?: unknown;
    serializedErrorType?: unknown;
    pendingMeta?: unknown;
    fulfilledMeta?: unknown;
    rejectedMeta?: unknown;
}>;
export declare const tryCloseRightTabs: import('@reduxjs/toolkit').AsyncThunk<void, number, {
    state: AppState;
    extra?: unknown;
    dispatch?: Dispatch | undefined;
    rejectValue?: unknown;
    serializedErrorType?: unknown;
    pendingMeta?: unknown;
    fulfilledMeta?: unknown;
    rejectedMeta?: unknown;
}>;
export declare const tryCloseLeftTabs: import('@reduxjs/toolkit').AsyncThunk<void, number, {
    state: AppState;
    extra?: unknown;
    dispatch?: Dispatch | undefined;
    rejectValue?: unknown;
    serializedErrorType?: unknown;
    pendingMeta?: unknown;
    fulfilledMeta?: unknown;
    rejectedMeta?: unknown;
}>;
export declare const reloadTab: import('@reduxjs/toolkit').AsyncThunk<void | INodeInfo, ITab<any, Partial<{
    initialLineInfo: {
        line: number;
        offset?: number;
        lastModification: number;
    };
    initialSelectionInfo: {
        selection: import('@ws-ui/shared').ITextEditorSelection;
        lastModification: number;
    };
    diffContent: string;
    attributes: import('@ws-ui/shared').IMethodAttributes;
    source: import('@ws-ui/shared').ISource;
    editor: import('@ws-ui/shared').IEditor;
    ext: import('@ws-ui/shared').DebuggerFileExtension;
    kind: string;
    eventReportView: "full" | "compact";
    eventReportFilters: string[];
}>>, {
    state: AppState;
    extra?: unknown;
    dispatch?: Dispatch | undefined;
    rejectValue?: unknown;
    serializedErrorType?: unknown;
    pendingMeta?: unknown;
    fulfilledMeta?: unknown;
    rejectedMeta?: unknown;
}>;
type SaveTabReturnType = ITab & {
    errors: IMultilineMessage[];
};
export declare const saveTab: import('@reduxjs/toolkit').AsyncThunk<SaveTabReturnType | null, {
    tab: ITab;
}, {
    state: AppState;
    extra?: unknown;
    dispatch?: Dispatch | undefined;
    rejectValue?: unknown;
    serializedErrorType?: unknown;
    pendingMeta?: unknown;
    fulfilledMeta?: unknown;
    rejectedMeta?: unknown;
}>;
export declare const setTabContent: import('@reduxjs/toolkit').AsyncThunk<void, {
    path: string;
    content: any;
    contentPath?: string;
    date?: string | undefined;
}, {
    state: AppState;
    extra?: unknown;
    dispatch?: Dispatch | undefined;
    rejectValue?: unknown;
    serializedErrorType?: unknown;
    pendingMeta?: unknown;
    fulfilledMeta?: unknown;
    rejectedMeta?: unknown;
}>;
export declare const setCurrentWebformState: import('@reduxjs/toolkit').AsyncThunk<void, {
    currentState: WebformState;
    path: string;
    contentPath?: string;
}, {
    state: AppState;
    extra?: unknown;
    dispatch?: Dispatch | undefined;
    rejectValue?: unknown;
    serializedErrorType?: unknown;
    pendingMeta?: unknown;
    fulfilledMeta?: unknown;
    rejectedMeta?: unknown;
}>;
export declare const tryInjectMethod: import('@reduxjs/toolkit').AsyncThunk<ITab<any, Partial<{
    initialLineInfo: {
        line: number;
        offset?: number;
        lastModification: number;
    };
    initialSelectionInfo: {
        selection: import('@ws-ui/shared').ITextEditorSelection;
        lastModification: number;
    };
    diffContent: string;
    attributes: import('@ws-ui/shared').IMethodAttributes;
    source: import('@ws-ui/shared').ISource;
    editor: import('@ws-ui/shared').IEditor;
    ext: import('@ws-ui/shared').DebuggerFileExtension;
    kind: string;
    eventReportView: "full" | "compact";
    eventReportFilters: string[];
}>> | null, {
    name: string;
    type?: ClassFileTypes;
    dataclass?: string;
    expand?: boolean;
}, {
    state: AppState;
    extra?: unknown;
    dispatch?: Dispatch | undefined;
    rejectValue?: unknown;
    serializedErrorType?: unknown;
    pendingMeta?: unknown;
    fulfilledMeta?: unknown;
    rejectedMeta?: unknown;
}>;
export declare const openRoles: import('@reduxjs/toolkit').AsyncThunk<void | ITab<any, Partial<{
    initialLineInfo: {
        line: number;
        offset?: number;
        lastModification: number;
    };
    initialSelectionInfo: {
        selection: import('@ws-ui/shared').ITextEditorSelection;
        lastModification: number;
    };
    diffContent: string;
    attributes: import('@ws-ui/shared').IMethodAttributes;
    source: import('@ws-ui/shared').ISource;
    editor: import('@ws-ui/shared').IEditor;
    ext: import('@ws-ui/shared').DebuggerFileExtension;
    kind: string;
    eventReportView: "full" | "compact";
    eventReportFilters: string[];
}>>, {}, {
    state: AppState;
    rejectValue: string;
    extra?: unknown;
    dispatch?: Dispatch | undefined;
    serializedErrorType?: unknown;
    pendingMeta?: unknown;
    fulfilledMeta?: unknown;
    rejectedMeta?: unknown;
}>;
export {};
