import { IDataSourceUpsertRequest, IDataSourceTestConnectionRequest, IDataSourceConnectionInfo, IDataSourcePatchRequest } from "@gooddata/sdk-backend-tiger"; import { IAnalyticalBackend } from "@gooddata/sdk-backend-spi"; import { ITigerSpecificFunctions } from "../lib/tigerSpecificFunctions"; export type RequestDataSourceData = IDataSourceUpsertRequest | IDataSourceTestConnectionRequest | IDataSourcePatchRequest; interface ISaveDataSourceState { isTestedConnectionSuccess: boolean; isSavedSuccess: boolean; isLoading: boolean; buttonText: string; errorApiMessage?: string; dataSourceInfo?: IDataSourceConnectionInfo; } interface ISaveDataSourceHook { saveDataSourceState: ISaveDataSourceState; createNewDataSource: (step: number, totalStep: number, request: RequestDataSourceData) => Promise; editDataSource: (dataSourceId: string, testConnectionData: IDataSourceTestConnectionRequest, updatedDataSourceData: IDataSourcePatchRequest) => Promise; backToConnectionInfoState: () => void; } export declare const useSaveDataSource: (backend: IAnalyticalBackend, tigerSpecificFunctions: ITigerSpecificFunctions, isEditMode: boolean) => ISaveDataSourceHook; export {};