@progress/telerik-common-report-viewer
Version:
Common code for Progress® Telerik® Report Viewer
86 lines (85 loc) • 4.25 kB
TypeScript
import { IServiceClient } from './Interfaces';
import { DeviceInfo, DocumentInfo, PageInfo, ParameterInfo, EmailInfo, SearchInfo, SearchResult, RenderingExtension } from './Models';
import { AiInfo } from './Types/AiInfoType';
import { ConfigurationInfo } from './Types/ConfigurationInfoType';
export interface IAuthStrategy {
authenticatePromise(isRefresh?: boolean, refreshToken?: string): Promise<string>;
}
export declare class NoAuth implements IAuthStrategy {
authenticatePromise(): Promise<string>;
}
export declare class BasicAuth implements IAuthStrategy {
private connectionConfig;
constructor(connectionConfig: any);
authenticatePromise(): Promise<string>;
}
export declare class PersonalTokenAuth implements IAuthStrategy {
private connectionConfig;
constructor(connectionConfig: any);
authenticatePromise(isRefresh: boolean, refreshToken: string): Promise<string>;
}
export declare enum AuthType {
None = 0,
Basic = 1,
PersonalToken = 2
}
export declare class ConnectionConfig {
authType: AuthType;
baseUrl: string;
serviceUrl: string;
constructor(baseUrl: string);
}
export declare class ConnectionConfigNoAuth extends ConnectionConfig {
constructor(baseUrl: string);
}
export declare class ConnectionConfigServerNoAuth extends ConnectionConfig {
constructor(baseUrl: string);
}
export declare class ConnectionConfigServerCredentials extends ConnectionConfigServerNoAuth {
username: string;
password: string;
tokenUrl: string;
constructor(baseUrl: string, username: string, password: string);
}
export declare class ConnectionConfigServerToken extends ConnectionConfigServerNoAuth {
getPersonalAccessToken: Function;
personalTokenUrl: string;
refreshTokenUrl: string;
constructor(baseUrl: string, getPersonalAccessToken: Function);
}
export declare class ServiceClient implements IServiceClient {
private loginPromise?;
private connectionConfig;
private authStrategy;
constructor(options: any);
private getConnectionConfig;
private getAuthStrategy;
private validateClientID;
private authenticatedGet;
private authenticatedPost;
private authenticatedDelete;
login(): Promise<string>;
get(url: string): Promise<any>;
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: DeviceInfo, 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>;
getServiceUrl(): string;
keepClientAlive(clientId: string): Promise<any>;
getClientsSessionTimeoutSeconds(): Promise<number>;
}