@progress/telerik-common-report-viewer
Version:
Common code for Progress® Telerik® Report Viewer
28 lines (27 loc) • 2.26 kB
TypeScript
import { DocumentInfo, EmailInfo, PageInfo, ParameterInfo, RenderingExtension, SearchInfo, SearchResult } from '../Models';
import { AiInfo } from '../Types/AiInfoType';
import { ConfigurationInfo } from '../Types/ConfigurationInfoType';
export interface IServiceClient {
setAccessToken: (accessToken: string) => void;
registerClient: () => Promise<string>;
unregisterClient: (clientId: string) => Promise<any>;
getParameters: (clientId: string, report: string, parameterValues: any) => Promise<ParameterInfo[]>;
createReportInstance: (clientId: string, report: string, parameterValues: any) => Promise<string>;
deleteReportInstance: (clientId: string, instanceId: string) => Promise<any>;
createReportDocument: (clientId: string, instanceId: string, format: string, deviceInfo: any, useCache: boolean, baseDocumentID: string, actionID: string) => Promise<string>;
sendDocument: (clientId: string, instanceId: string, documentId: string, mailArgs: EmailInfo) => Promise<any>;
deleteReportDocument: (clientId: string, instanceId: string, documentId: string) => Promise<any>;
getDocumentUrl: (clientId: string, instanceId: string, documentId: string) => string;
getDocumentInfo: (clientId: string, instanceId: string, documentId: string) => Promise<DocumentInfo>;
getPage: (clientId: string, instanceId: string, documentId: string, pageNumber: number) => Promise<PageInfo>;
getDocumentFormats: () => Promise<RenderingExtension[]>;
getServiceVersion: () => Promise<string>;
getServiceConfiguration: () => Promise<ConfigurationInfo>;
getResource: (clientId: string, instanceId: string, documentId: string, resourceId: string) => Promise<any>;
getSearchResults: (clientId: string, instanceId: string, documentId: string, searchInfo: SearchInfo) => Promise<SearchResult[]>;
createAIThread: (clientId: string, instanceId: string, report: string, parameterValues: any) => Promise<AiInfo>;
getAIResponse: (clientId: string, instanceId: string, documentId: string, threadId: string, query: string) => Promise<string>;
keepClientAlive: (clientId: string) => Promise<any>;
getClientsSessionTimeoutSeconds: () => Promise<number>;
getServiceUrl: () => string;
}