/******************************************************************************** * Copyright (c) 2019 TypeFox and others * * This program and the accompanying materials are made available under the * terms of the Eclipse Public License v. 2.0 which is available at * http://www.eclipse.org/legal/epl-2.0. * * SPDX-License-Identifier: EPL-2.0 ********************************************************************************/ import { Extension, UserData, ExtensionCategory, ExtensionReviewList, PersonalAccessToken, SearchResult, NewReview, SuccessResult, ErrorResult, CsrfTokenJson, Namespace, NamespaceDetails, MembershipRole, SortBy, SortOrder, UrlString, NamespaceMembershipList, PublisherInfo, SearchEntry, RegistryVersion, LoginProviders, ScanResultJson, ScanCounts, ScanResultsResponse, ScanFilterOptions, FilesResponse, FileDecisionCountsJson, ScanDecisionRequest, ScanDecisionResponse, FileDecisionRequest, FileDecisionResponse, FileDecisionDeleteRequest, FileDecisionDeleteResponse, Tier, TierList, Customer, CustomerList, UsageStatsList, LogPageableList, CustomerMembershipList, RateLimitToken, Settings } from './extension-registry-types'; import { ErrorResponse } from './server-request'; export declare class ExtensionRegistryService { readonly serverUrl: string; readonly admin: AdminService; constructor(serverUrl?: string, AdminConstructor?: AdminServiceConstructor); getLoginProviders(abortController: AbortController): Promise>; getLogoutUrl(): string; getExtensionApiUrl(ext: { namespace: string; name: string; target?: string; version?: string; }): string; getNamespaceDetails(abortController: AbortController, name: string): Promise>; setNamespaceDetails(abortController: AbortController, endpoint: string, details: NamespaceDetails): Promise>; setNamespaceLogo(abortController: AbortController, endpoint: string, logoFile: Blob, logoName: string): Promise>; search(abortController: AbortController, filter?: ExtensionFilter): Promise>; getExtensionDetail(abortController: AbortController, extensionUrl: UrlString): Promise>; getExtensionReadme(abortController: AbortController, extension: Extension): Promise; getExtensionChangelog(abortController: AbortController, extension: Extension): Promise; getExtensionIcon(abortController: AbortController, extension: Extension | SearchEntry): Promise; getCategories(): ExtensionCategory[]; getExtensionReviews(abortController: AbortController, extension: Extension): Promise>; postReview(abortController: AbortController, review: NewReview, postReviewUrl: UrlString): Promise>; deleteReview(abortController: AbortController, deleteReviewUrl: string): Promise>; deleteUserReview(abortController: AbortController, extension: Extension, user: UserData): Promise>; getUser(abortController: AbortController): Promise>; getUserAuthError(abortController: AbortController): Promise>; getUserByName(abortController: AbortController, name: string): Promise[]>; getAccessTokens(abortController: AbortController, user: UserData): Promise[]>; createAccessToken(abortController: AbortController, user: UserData, description: string): Promise>; deleteAccessToken(abortController: AbortController, token: PersonalAccessToken): Promise>; deleteAllAccessTokens(abortController: AbortController, tokens: PersonalAccessToken[]): Promise[]>; getCsrfToken(abortController: AbortController): Promise>; getNamespaces(abortController: AbortController): Promise[]>; getCustomers(abortController: AbortController): Promise[]>; getUsageStats(abortController: AbortController, customerName: string, date: Date): Promise>; getNamespaceMembers(abortController: AbortController, namespace: Namespace): Promise>; setNamespaceMember(abortController: AbortController, endpoint: UrlString, user: UserData, role: MembershipRole | 'remove'): Promise[]>; signPublisherAgreement(abortController: AbortController): Promise>; getStaticContent(abortController: AbortController, url: string): Promise; publishExtension(abortController: AbortController, extensionPackage: File): Promise>; createNamespace(abortController: AbortController, name: string): Promise>; getExtensions(abortController: AbortController): Promise>; getExtension(abortController: AbortController, namespace: string, extension: string): Promise>; deleteExtensions(abortController: AbortController, req: { namespace: string; extension: string; targetPlatformVersions?: object[]; }): Promise>; getRegistryVersion(abortController: AbortController): Promise>; } export interface AdminService { getExtension(abortController: AbortController, namespace: string, extension: string): Promise>; deleteExtensions(abortController: AbortController, req: { namespace: string; extension: string; targetPlatformVersions?: object[]; }): Promise>; getNamespace(abortController: AbortController, name: string): Promise>; createNamespace(abortController: AbortController, namespace: { name: string; }): Promise>; deleteNamespace(abortController: AbortController, namespace: { name: string; }): Promise>; changeNamespace(abortController: AbortController, req: { oldNamespace: string; newNamespace: string; removeOldNamespace: boolean; mergeIfNewNamespaceAlreadyExists: boolean; }): Promise>; getPublisherInfo(abortController: AbortController, provider: string, login: string): Promise>; revokePublisherContributions(abortController: AbortController, provider: string, login: string): Promise>; revokeAccessTokens(abortController: AbortController, provider: string, login: string): Promise>; getAllScans(abortController: AbortController, params?: { size?: number; offset?: number; status?: string | string[]; publisher?: string; namespace?: string; name?: string; validationType?: string[]; threatScannerName?: string[]; dateStartedFrom?: string; dateStartedTo?: string; enforcement?: 'enforced' | 'notEnforced' | 'all'; }): Promise>; getScan(abortController: AbortController, scanId: string): Promise>; retryFailedScannerJobs(abortController: AbortController, scanId: string): Promise>; getScanCounts(abortController: AbortController, params?: { dateStartedFrom?: string; dateStartedTo?: string; enforcement?: 'enforced' | 'notEnforced' | 'all'; threatScannerName?: string[]; validationType?: string[]; }): Promise>; getScanFilterOptions(abortController: AbortController): Promise>; getFiles(abortController: AbortController, params?: { size?: number; offset?: number; decision?: string; publisher?: string; namespace?: string; name?: string; dateDecidedFrom?: string; dateDecidedTo?: string; sortBy?: string; sortOrder?: 'asc' | 'desc'; }): Promise>; getFileCounts(abortController: AbortController, params?: { dateDecidedFrom?: string; dateDecidedTo?: string; }): Promise>; makeScanDecision(abortController: AbortController, request: ScanDecisionRequest): Promise>; makeFileDecision(abortController: AbortController, request: FileDecisionRequest): Promise>; deleteFileDecisions(abortController: AbortController, request: FileDecisionDeleteRequest): Promise>; getTiers(abortController: AbortController): Promise>; createTier(abortController: AbortController, tier: Tier): Promise>; updateTier(abortController: AbortController, name: string, tier: Tier): Promise>; deleteTier(abortController: AbortController, name: string): Promise>; getCustomers(abortController: AbortController): Promise>; getCustomer(abortController: AbortController, name: string): Promise>; createCustomer(abortController: AbortController, customer: Customer): Promise>; updateCustomer(abortController: AbortController, name: string, customer: Customer): Promise>; deleteCustomer(abortController: AbortController, name: string): Promise>; getCustomerMembers(abortController: AbortController, name: string): Promise>; addCustomerMember(abortController: AbortController, name: string, user: UserData): Promise>; removeCustomerMember(abortController: AbortController, name: string, user: UserData): Promise>; getUsageStats(abortController: AbortController, customerName: string, date: Date): Promise>; getLogs(abortController: AbortController, page?: number, size?: number, period?: string): Promise>; getCustomerRateLimitTokens(abortController: AbortController, customerName: string): Promise>; createCustomerRateLimitToken(abortController: AbortController, customerName: string, description: string): Promise>; deleteCustomerRateLimitToken(abortController: AbortController, customerName: string, tokenId: number): Promise>; getSettings(abortController: AbortController): Promise>; updateSettings(abortController: AbortController, settings: Settings): Promise>; } export interface AdminServiceConstructor { new (registry: ExtensionRegistryService): AdminService; } export declare class AdminServiceImpl implements AdminService { readonly registry: ExtensionRegistryService; constructor(registry: ExtensionRegistryService); getExtension(abortController: AbortController, namespace: string, extension: string): Promise>; deleteExtensions(abortController: AbortController, req: { namespace: string; extension: string; targetPlatformVersions?: object[]; }): Promise>; getNamespace(abortController: AbortController, name: string): Promise>; createNamespace(abortController: AbortController, namespace: { name: string; }): Promise>; deleteNamespace(abortController: AbortController, namespace: { name: string; }): Promise>; changeNamespace(abortController: AbortController, req: { oldNamespace: string; newNamespace: string; removeOldNamespace: boolean; mergeIfNewNamespaceAlreadyExists: boolean; }): Promise>; getPublisherInfo(abortController: AbortController, provider: string, login: string): Promise>; revokePublisherContributions(abortController: AbortController, provider: string, login: string): Promise>; revokeAccessTokens(abortController: AbortController, provider: string, login: string): Promise>; getAllScans(abortController: AbortController, params?: { size?: number; offset?: number; status?: string | string[]; publisher?: string; namespace?: string; name?: string; validationType?: string[]; threatScannerName?: string[]; dateStartedFrom?: string; dateStartedTo?: string; enforcement?: 'enforced' | 'notEnforced' | 'all'; adminDecision?: string[]; }): Promise>; getScan(abortController: AbortController, scanId: string): Promise>; retryFailedScannerJobs(abortController: AbortController, scanId: string): Promise>; getScanCounts(abortController: AbortController, params?: { dateStartedFrom?: string; dateStartedTo?: string; enforcement?: 'enforced' | 'notEnforced' | 'all'; threatScannerName?: string[]; validationType?: string[]; }): Promise>; getScanFilterOptions(abortController: AbortController): Promise>; getFiles(abortController: AbortController, params?: { size?: number; offset?: number; decision?: string; publisher?: string; namespace?: string; name?: string; dateDecidedFrom?: string; dateDecidedTo?: string; sortBy?: string; sortOrder?: 'asc' | 'desc'; }): Promise>; getFileCounts(abortController: AbortController, params?: { dateDecidedFrom?: string; dateDecidedTo?: string; }): Promise>; makeScanDecision(abortController: AbortController, request: ScanDecisionRequest): Promise>; makeFileDecision(abortController: AbortController, request: FileDecisionRequest): Promise>; deleteFileDecisions(abortController: AbortController, request: FileDecisionDeleteRequest): Promise>; getTiers(abortController: AbortController): Promise>; createTier(abortController: AbortController, tier: Tier): Promise>; updateTier(abortController: AbortController, name: string, tier: Tier): Promise>; deleteTier(abortController: AbortController, name: string): Promise; getCustomers(abortController: AbortController): Promise>; getCustomer(abortController: AbortController, name: string): Promise>; createCustomer(abortController: AbortController, customer: Customer): Promise>; updateCustomer(abortController: AbortController, name: string, customer: Customer): Promise>; deleteCustomer(abortController: AbortController, name: string): Promise; getCustomerMembers(abortController: AbortController, name: string): Promise>; addCustomerMember(abortController: AbortController, name: string, user: UserData): Promise>; removeCustomerMember(abortController: AbortController, name: string, user: UserData): Promise>; /** * Get usage stats for a customer within an optional date range. */ getUsageStats(abortController: AbortController, customerName: string, date: Date): Promise>; getLogs(abortController: AbortController, page?: number, size?: number, period?: string): Promise>; getCustomerRateLimitTokens(abortController: AbortController, customerName: string): Promise>; createCustomerRateLimitToken(abortController: AbortController, customerName: string, description?: string): Promise>; deleteCustomerRateLimitToken(abortController: AbortController, customerName: string, tokenId: number): Promise>; getSettings(abortController: AbortController): Promise>; updateSettings(abortController: AbortController, settings: Settings): Promise>; } export interface ExtensionFilter { query: string; category: ExtensionCategory | ''; size: number; offset: number; sortBy: SortBy; sortOrder: SortOrder; } //# sourceMappingURL=extension-registry-service.d.ts.map