import type { LicenseProvider } from '@n8n/backend-common'; import { Logger } from '@n8n/backend-common'; import { GlobalConfig } from '@n8n/config'; import { type BooleanLicenseFeature, type NumericLicenseFeature } from '@n8n/constants'; import { SettingsRepository } from '@n8n/db'; import type { TEntitlement, TLicenseBlock } from '@n8n_io/license-sdk'; import { InstanceSettings } from 'n8n-core'; import { LicenseMetricsService } from './metrics/license-metrics.service'; export type FeatureReturnType = Partial<{ planName: string; } & { [K in NumericLicenseFeature]: number; } & { [K in BooleanLicenseFeature]: boolean; }>; export declare class License implements LicenseProvider { private readonly logger; private readonly instanceSettings; private readonly settingsRepository; private readonly licenseMetricsService; private readonly globalConfig; private manager; private isShuttingDown; constructor(logger: Logger, instanceSettings: InstanceSettings, settingsRepository: SettingsRepository, licenseMetricsService: LicenseMetricsService, globalConfig: GlobalConfig); init({ forceRecreate, isCli, }?: { forceRecreate?: boolean; isCli?: boolean; }): Promise; loadCertStr(): Promise; private onFeatureChange; private onLicenseRenewed; private broadcastReloadLicenseCommand; saveCertStr(value: TLicenseBlock): Promise; activate(activationKey: string): Promise; reload(): Promise; renew(): Promise; clear(): Promise; shutdown(): Promise; isLicensed(feature: BooleanLicenseFeature): boolean; isSharingEnabled(): boolean; isLogStreamingEnabled(): boolean; isLdapEnabled(): boolean; isSamlEnabled(): boolean; isApiKeyScopesEnabled(): boolean; isAiAssistantEnabled(): boolean; isAskAiEnabled(): boolean; isAiCreditsEnabled(): boolean; isAdvancedExecutionFiltersEnabled(): boolean; isAdvancedPermissionsLicensed(): boolean; isDebugInEditorLicensed(): boolean; isBinaryDataS3Licensed(): boolean; isMultiMainLicensed(): boolean; isVariablesEnabled(): boolean; isSourceControlLicensed(): boolean; isExternalSecretsEnabled(): boolean; isWorkflowHistoryLicensed(): boolean; isAPIDisabled(): boolean; isWorkerViewLicensed(): boolean; isProjectRoleAdminLicensed(): boolean; isProjectRoleEditorLicensed(): boolean; isProjectRoleViewerLicensed(): boolean; isCustomNpmRegistryEnabled(): boolean; isFoldersEnabled(): boolean; getCurrentEntitlements(): TEntitlement[]; getValue(feature: T): FeatureReturnType[T]; getManagementJwt(): string; getMainPlan(): TEntitlement | undefined; getConsumerId(): string; getUsersLimit(): number; getTriggerLimit(): number; getVariablesLimit(): number; getAiCredits(): number; getWorkflowHistoryPruneLimit(): number; getTeamProjectLimit(): number; getPlanName(): string; getInfo(): string; isWithinUsersLimit(): boolean; enableAutoRenewals(): void; disableAutoRenewals(): void; }