import { type AxiosRequestConfig } from "axios"; import { type ActionsApiProcessInvitationRequest, type AnalyzeCsvRequest, type AnalyzeCsvResponse, type ApiEntitlement, type DataSourceParameter, type DeclarativeAnalytics, type DeclarativeModel, type DeclarativeWorkspaceDataFilters, type DependentEntitiesRequest, type DependentEntitiesResponse, type GdStorageFile, type GenerateLdmRequest, type HierarchyObjectIdentification, type ITigerClientBase, type IdentifierDuplications, type ImportCsvRequest, type ImportCsvResponse, type JsonApiDataSourceInAttributesCacheStrategyEnum, type JsonApiDataSourceInAttributesDateTimeSemanticsEnum, type JsonApiDataSourceInAttributesTypeEnum, type JsonApiDataSourceInDocument, type JsonApiDataSourceOutAttributesAuthenticationTypeEnum, type JsonApiDatasetOutList, type JsonApiNotificationChannelOut, type JsonApiOrganizationOutMetaPermissionsEnum, type JsonApiWorkspaceDataFilterInDocument, type JsonApiWorkspaceDataFilterOutDocument, type JsonApiWorkspaceDataFilterSettingInDocument, type JsonApiWorkspaceDataFilterSettingOutDocument, type JsonApiWorkspaceInDocument, type LayoutApiPutWorkspaceLayoutRequest, type PlatformUsage, type ReadCsvFileManifestsResponse, type ScanResultPdm, type ScanSqlResponse, type TestDefinitionRequestTypeEnum, type UploadFileResponse } from "@gooddata/api-client-tiger"; import { type IAacAnalyticsModel, type IAacLogicalModel } from "@gooddata/api-client-tiger/endpoints/aac"; import { type AuthenticatedAsyncCall } from "@gooddata/sdk-backend-base"; import { type ErrorConverter, type IAnalyticalBackend } from "@gooddata/sdk-backend-spi"; import { type IUser } from "@gooddata/sdk-model"; /** * @internal */ export interface IApiToken { id: string; } /** * @internal */ export interface IApiTokenExtended extends IApiToken { bearerToken: string | undefined; } /** * @internal */ export interface IScanRequest { scanTables: boolean; scanViews: boolean; separator: string; tablePrefix: string; viewPrefix: string; schemata: string[]; } /** * @internal */ export type ScanResult = ScanResultPdm; /** * @internal */ export interface IEntitlement { id: string; value?: string; expiry?: string; } /** * @internal */ export type IDataSourceType = JsonApiDataSourceInAttributesTypeEnum; /** * @internal */ export type IDataSourceCacheStrategy = JsonApiDataSourceInAttributesCacheStrategyEnum; /** * @internal */ export type IDataSourceDateTimeSemantics = JsonApiDataSourceInAttributesDateTimeSemanticsEnum; /** * @internal */ export type IDataSourcePermission = "MANAGE" | "USE"; /** * @internal */ export interface IDataSourceConnectionInfo { id: string; type: IDataSourceType; name: string; schema: string; username?: string; clientId?: string; url?: string | null; permissions?: IDataSourcePermission[]; parameters?: Array | null; decodedParameters?: Array | null; cacheStrategy?: IDataSourceCacheStrategy | null; authenticationType?: JsonApiDataSourceOutAttributesAuthenticationTypeEnum | null; dateTimeSemantics?: IDataSourceDateTimeSemantics | null; } /** *@internal */ export interface IDataSourceApiResult { data?: IDataSourceConnectionInfo; errorMessage?: string; } /** * @internal */ export interface IDataSourceUpsertRequest { id: string; name: string; password?: string; schema: string; token?: string; type: IDataSourceType; url?: string; username?: string; parameters?: Array; cacheStrategy?: IDataSourceCacheStrategy; privateKey?: string; privateKeyPassphrase?: string; clientId?: string; clientSecret?: string; dateTimeSemantics?: IDataSourceDateTimeSemantics | null; } /** * @internal */ export interface IDataSourcePatchRequest { id: string; name?: string; password?: string | null; schema?: string; token?: string | null; type?: IDataSourceType; url?: string; username?: string; parameters?: Array; cacheStrategy?: IDataSourceCacheStrategy; privateKey?: string | null; privateKeyPassphrase?: string | null; clientId?: string | null; clientSecret?: string | null; dateTimeSemantics?: IDataSourceDateTimeSemantics | null; } /** * @internal */ export interface IDataSourceTestConnectionRequest { password?: string; schema: string; token?: string; type: TestDefinitionRequestTypeEnum; url: string; username?: string; parameters?: Array; privateKey?: string; privateKeyPassphrase?: string; clientId?: string; clientSecret?: string; } /** * @internal */ export interface IDataSourceTestConnectionResponse { successful: boolean; error?: string; } /** * @internal */ export interface IDataSourceDeletedResponse { successful?: boolean; errorMessage?: string; } /** * @internal */ export interface IInvitationUserResponse { successful?: boolean; errorMessage?: string; } /** * @internal */ export interface ICSPDirective { id: string; attributes: { /** * Representation values of the CSP directive entity. * Ex: http://a.com, *.abc.com, 'self', .. */ sources: Array; }; } /** * @internal */ export type INotificationChannel = Omit; /** * @internal */ export interface ICustomApplicationSetting { id: string; /** * Name of the application the setting is applied. * Ex: ldmModeler */ applicationName: string; /** * Representation values of the setting. * Ex: Layout setting of ldmModeler: \{ "layout" : []\} */ content: { [key: string]: any; }; } /** * @internal */ export type OrganizationPermission = JsonApiOrganizationOutMetaPermissionsEnum; /** * @internal */ export type GenerateLogicalModelRequest = GenerateLdmRequest; /** * @internal */ export type DeclarativeLogicalModel = DeclarativeModel; /** * @internal */ export type DeclarativeAnalyticsModel = DeclarativeAnalytics; /** * @internal */ export type PutWorkspaceLayoutRequest = LayoutApiPutWorkspaceLayoutRequest; /** * @internal */ export type DataSourceDefinition = JsonApiDataSourceInDocument; /** * @internal */ export type WorkspaceDefinition = JsonApiWorkspaceInDocument; /** * @internal */ export type DependentEntitiesGraphRequest = DependentEntitiesRequest; /** * @internal */ export type DependentEntitiesGraphResponse = DependentEntitiesResponse; /** * @internal */ export type WorkspaceDataFiltersLayout = DeclarativeWorkspaceDataFilters; /** * @internal */ export type WorkspaceDataFilterResult = JsonApiWorkspaceDataFilterOutDocument; /** * @internal */ export type WorkspaceDataFilterSettingResult = JsonApiWorkspaceDataFilterSettingOutDocument; /** * @internal */ export type WorkspaceDataFilter = JsonApiWorkspaceDataFilterInDocument; /** * @internal */ export type WorkspaceDataFilterSetting = JsonApiWorkspaceDataFilterSettingInDocument; /** * @internal */ export type ScanSqlResult = ScanSqlResponse; /** * @internal */ export type WorkspaceEntitiesDatasets = JsonApiDatasetOutList; /** * TigerBackend-specific functions. * If possible, avoid these functions, they are here for specific use cases. * * Do not use parameters or return values from \@gooddata/api-client-tiger. * * @internal */ export type TigerSpecificFunctions = { isCommunityEdition?: () => Promise; isOrganizationAdmin?: () => Promise; organizationExpiredDate?: () => Promise; getOrganizationAllowedOrigins?: (organizationId: string) => Promise; getOrganizationPermissions?: (organizationId: string) => Promise>; updateOrganizationAllowedOrigins?: (organizationId: string, updatedOrigins: string[]) => Promise; getDeploymentVersion?: () => Promise; getAllApiTokens?: (userId: string) => Promise; generateApiToken?: (userId: string, tokenId: string) => Promise; deleteApiToken?: (userId: string, tokenId: string) => Promise; someDataSourcesExists?: (filter?: string) => Promise; generateLogicalModel?: (dataSourceId: string, generateLogicalModelRequest: GenerateLogicalModelRequest) => Promise; scanDataSource?: (dataSourceId: string, scanRequest: IScanRequest) => Promise; createDemoWorkspace?: (sampleWorkspace: WorkspaceDefinition) => Promise; createDemoDataSource?: (sampleDataSource: DataSourceDefinition) => Promise; createWorkspace?: (id: string, name: string, parentId?: string) => Promise; /** * @deprecated use IAnalyticalBackend.workspace(id).updateDescriptor(\{ title: name \}) */ updateWorkspaceTitle?: (id: string, name: string) => Promise; deleteWorkspace?: (id: string) => Promise; canDeleteWorkspace?: (id: string) => Promise; getWorkspaceLogicalModel?: (id: string, includeParents?: boolean) => Promise; getWorkspaceEntitiesDatasets?: (id: string) => Promise; getEntitlements?: () => Promise>; putWorkspaceLayout?: (requestParameters: PutWorkspaceLayoutRequest) => Promise; getWorkspaceAnalyticsModelAac?: (workspaceId: string, exclude?: Array<"ACTIVITY_INFO">) => Promise; setWorkspaceAnalyticsModelAac?: (workspaceId: string, analyticsModel: IAacAnalyticsModel) => Promise; getWorkspaceLogicalModelAac?: (workspaceId: string, includeParents?: boolean) => Promise; setWorkspaceLogicalModelAac?: (workspaceId: string, logicalModel: IAacLogicalModel) => Promise; getAllDataSources?: () => Promise; getDataSourceById?: (id: string) => Promise; getDataSourceIdentifierById?: (id: string) => Promise; createDataSource?: (requestData: IDataSourceUpsertRequest) => Promise; updateDataSource?: (id: string, requestData: IDataSourceUpsertRequest) => Promise; patchDataSource?: (id: string, requestData: IDataSourcePatchRequest) => Promise; deleteDataSource?: (id: string) => Promise; testDataSourceConnection?: (connectionData: IDataSourceTestConnectionRequest, id?: string) => Promise; publishLogicalModel?: (workspaceId: string, declarativeModel: DeclarativeLogicalModel) => Promise; getDataSourceSchemata?: (dataSourceId: string) => Promise; getDependentEntitiesGraph?: (workspaceId: string) => Promise; getDependentEntitiesGraphFromEntryPoints?: (workspaceId: string, dependentEntitiesGraphRequest: DependentEntitiesGraphRequest) => Promise; resolveAllEntitlements?: () => Promise; getAllPlatformUsage?: () => Promise; inviteUser?: (requestParameters: ActionsApiProcessInvitationRequest, options?: AxiosRequestConfig) => Promise; getWorkspaceDataFiltersLayout?: () => Promise; setWorkspaceDataFiltersLayout?: (workspaceDataFiltersLayout: WorkspaceDataFiltersLayout) => Promise; getWorkspaceDataFilter?: (workspaceId: string, objectId: string) => Promise; setWorkspaceDataFilter?: (workspaceId: string, workspaceDataFilter: WorkspaceDataFilter) => Promise; getWorkspaceDataFilterSetting?: (workspaceId: string, objectId: string) => Promise; setWorkspaceDataFilterSetting?: (workspaceId: string, workspaceDataFilterSetting: WorkspaceDataFilterSetting) => Promise; getAllCSPDirectives?: () => Promise>; getCSPDirective?: (directiveId: string) => Promise; createCSPDirective?: (requestData: ICSPDirective) => Promise; updateCSPDirective?: (directiveId: string, requestData: ICSPDirective) => Promise; deleteCSPDirective?: (directiveId: string) => Promise; registerUploadNotification?: (dataSourceId: string) => Promise; /** * Return all custom setting of a workspace. * * @param workspaceId - id of the workspace * @param applicationName - name of the appliation the setting was set for - ex: ldmModeler * @returns ICustomApplicationSetting[] * */ getWorkspaceCustomAppSettings?: (workspaceId: string, applicationName?: string) => Promise; /** * Return all custom setting of a workspace. * * @param workspaceId - id of the workspace * @param settingId - id of the custom setting * @returns ICustomApplicationSetting * */ getWorkspaceCustomAppSetting?: (workspaceId: string, settingId: string) => Promise; /** * Create a custom setting of a for a workspace. * * @param workspaceId - id of the workspace * @param applicationName - name of the appliation the setting was set for - ex: ldmModeler * @param content - setting data - json object * @example : \{"layout" : []\} * @param settingId - id of the custom setting, generated if not provided * @returns ICustomApplicationSetting * */ createWorkspaceCustomAppSetting?: (workspaceId: string, applicationName: string, content: object, settingId?: string) => Promise; /** * Delete a custom setting by workspace id and setting id. * * @param workspaceId - id of the workspace * @param settingId - id of the custom setting that should be deleted */ deleteWorkspaceCustomAppSetting?: (workspaceId: string, settingId: string) => Promise; /** * Get the User Entity data * * @param id - id of the current userId * @returns IUser * */ getEntityUser?: (id: string) => Promise; /** * Get metadata about SQL query * * @param dataSourceId - id of the datasource * @param sql - SQL query to be analyzed * @returns ScanSqlResult - * */ scanSql?: (dataSourceId: string, sql: string) => Promise; /** * Check if entities are not overrides by entities from parents workspaces * @param entities - All i and types for check * @returns IdentifierDuplications[] */ checkEntityOverrides?: (workspaceId: string, entities: Array) => Promise>; /** * Upload a CSV file to the GDSTORAGE data source staging location * @param dataSourceId - id of the data source * @param file - the file to upload */ stagingUpload?: (file: File) => Promise; /** * Analyze CSV files in GDSTORAGE data source staging location * @param analyzeRequest - the request to analyze CSV files */ analyzeCsv?: (analyzeCsvRequest: AnalyzeCsvRequest) => Promise>; /** * Import CSV files from GDSTORAGE data source staging location * @param dataSourceId - id of the data source * @param importRequest - the request to import CSV files */ importCsv?: (dataSourceId: string, importCsvRequest: ImportCsvRequest) => Promise>; /** * List CSV files from GDSTORAGE data source staging location * @param dataSourceId - id of the data source */ listFiles?: (dataSourceId: string) => Promise>; /** * Delete CSV files from GDSTORAGE data source * @param dataSourceId - id of the data source * @param fileNames - names of CSV files to delete */ deleteFiles?: (dataSourceId: string, fileNames: string[]) => Promise; /** * Delete CSV files from GDSTORAGE data source * @param dataSourceId - id of the data source * @param fileNames - names of CSV files to delete */ readFileManifests?: (dataSourceId: string, fileNames: string[]) => Promise; }; export declare const buildTigerSpecificFunctions: (backend: IAnalyticalBackend, authApiCall: (call: AuthenticatedAsyncCall, errorConverter?: ErrorConverter | undefined) => Promise) => TigerSpecificFunctions; //# sourceMappingURL=tigerSpecificFunctions.d.ts.map