npm package diff
Package: @forge/cli-shared
Versions: 6.6.1-next.8 - 6.6.1-next.9
File: package/out/service/supported-products-service.d.ts
Index: package/out/service/supported-products-service.d.ts
===================================================================
--- package/out/service/supported-products-service.d.ts
+++ package/out/service/supported-products-service.d.ts
@@ -1,29 +1,38 @@
/// <reference types="node" />
import { StatsigService } from './statsig-service';
import { URL } from 'url';
import { ProductDisplayName } from '../shared';
-declare const SUPPORTED_PRODUCTS_ALL: readonly ["Jira", "Confluence", "Compass", "Teamwork Graph", "Atlas", "Bitbucket"];
-export declare const TEST_ONLY_EXPORTS: {
- SITED_PRODUCTS_ALL: readonly ["Jira", "Confluence", "Compass", "Teamwork Graph", "Atlas"];
- SITED_PRODUCTS_ALWAYS_ENABLED: readonly ["Jira", "Confluence", "Compass"];
- WORKSPACE_PRODUCTS_ALL: readonly ["Bitbucket"];
- SUPPORTED_PRODUCTS_ALWAYS_ENABLED: readonly ["Jira", "Confluence", "Compass", "Bitbucket"];
+export declare type SupportedProduct = 'Jira' | 'Confluence' | 'Compass' | 'Teamwork Graph' | 'Atlas' | 'Bitbucket';
+declare type ProductType = 'sited' | 'workspace';
+export declare type ProductDefinition = {
+ name: SupportedProduct;
+ productType: ProductType;
+ special?: {
+ supportedByCrossProductApps?: boolean;
+ isEnabledByFeatureGate?: (statsigService: StatsigService) => Promise<boolean>;
+ };
};
-export declare type SupportedProduct = (typeof SUPPORTED_PRODUCTS_ALL)[number] & ProductDisplayName;
+declare class SupportedProductEntry {
+ productName: SupportedProduct;
+ productType: ProductType;
+ supportedByCrossProductApps: boolean;
+ constructor(productName: SupportedProduct, productType: ProductType, supportedByCrossProductApps: boolean);
+}
+declare function resolveEnabledProducts(statsigService: StatsigService): Promise<SupportedProductEntry[]>;
export declare class SupportedProductsService {
- private readonly statsigService;
- private featureGatedProductsCache;
- constructor(statsigService: StatsigService);
- private buildFeatureGatedProduct;
- private getFeatureGatedProducts;
- private getProductsEnabledByFeatureGate;
- private ensureProductDisplayName;
- getSupportedProducts(requiredProducts?: string[]): Promise<SupportedProduct[]>;
- private getSupportedWorkspaceProducts;
- validateSupportedProduct(productNameInput: string): Promise<SupportedProduct>;
- isWorkspaceProduct(product: string): Promise<boolean>;
- validateSite(site: string, product: ProductDisplayName | undefined): Promise<URL>;
+ private supportedProducts?;
+ constructor(supportedProducts?: SupportedProductEntry[] | undefined);
+ initializeWithSupportedProducts(statsigService: StatsigService): Promise<void>;
+ private getSupportedProductsNames;
+ getSupportedProducts(): SupportedProduct[];
+ getSupportedSecondaryProductsForXPA(requiredProducts: string[]): SupportedProduct[];
+ validateSupportedProduct(productNameInput: string): SupportedProduct;
+ isWorkspaceProduct(product: string): boolean;
+ validateSite(site: string, product: ProductDisplayName | undefined): URL;
}
export declare const isBitbucketProduct: (product: string) => boolean;
+export declare const TEST_ONLY_EXPORTS: {
+ resolveEnabledProducts: typeof resolveEnabledProducts;
+};
export {};
//# sourceMappingURL=supported-products-service.d.ts.map
\ No newline at end of file