import type { BundlerMain } from '@teambit/bundler'; import type { CLIMain } from '@teambit/cli'; import type { EnvsMain } from '@teambit/envs'; import type { GraphqlMain } from '@teambit/graphql'; import type { Harmony, SlotRegistry } from '@teambit/harmony'; import type { IsolatorMain } from '@teambit/isolator'; import type { LoggerMain } from '@teambit/logger'; import type { ScopeMain } from '@teambit/scope'; import type { UiMain } from '@teambit/ui'; import type { GlobalConfigMain } from '@teambit/global-config'; import type { AspectLoaderMain } from '@teambit/aspect-loader'; import type { DependencyResolverMain } from '@teambit/dependency-resolver'; import type { ComponentMain, Component } from '@teambit/component'; import type { VariantsMain } from '@teambit/variants'; import type { ComponentID } from '@teambit/component-id'; import type { OnComponentAdd, OnComponentChange, OnComponentRemove, OnComponentLoad } from './on-component-events'; import type { WorkspaceExtConfig } from './types'; import { Workspace } from './workspace'; import type { ConfigStoreMain } from '@teambit/config-store'; export type WorkspaceDeps = [ CLIMain, ScopeMain, ComponentMain, IsolatorMain, DependencyResolverMain, VariantsMain, LoggerMain, GraphqlMain, UiMain, BundlerMain, AspectLoaderMain, EnvsMain, GlobalConfigMain, ConfigStoreMain ]; export type OnComponentLoadSlot = SlotRegistry; export type OnComponentChangeSlot = SlotRegistry; export type OnComponentAddSlot = SlotRegistry; export type OnComponentRemoveSlot = SlotRegistry; export type OnBitmapChange = () => Promise; export type OnBitmapChangeSlot = SlotRegistry; export type OnWorkspaceConfigChange = () => Promise; export type OnWorkspaceConfigChangeSlot = SlotRegistry; export type OnAspectsResolve = (aspectsComponents: Component[]) => Promise; export type OnAspectsResolveSlot = SlotRegistry; export type OnRootAspectAdded = (aspectsId: ComponentID, inWs: boolean) => Promise; export type OnRootAspectAddedSlot = SlotRegistry; export declare class WorkspaceMain { static runtime: import("@teambit/harmony").RuntimeDefinition; static dependencies: import("@teambit/harmony").Aspect[]; static slots: (((registerFn: () => string) => SlotRegistry) | ((registerFn: () => string) => SlotRegistry) | ((registerFn: () => string) => SlotRegistry) | ((registerFn: () => string) => SlotRegistry) | ((registerFn: () => string) => SlotRegistry) | ((registerFn: () => string) => SlotRegistry))[]; static provider([cli, scope, component, isolator, dependencyResolver, variants, loggerExt, graphql, ui, bundler, aspectLoader, envs, globalConfig, configStore,]: WorkspaceDeps, config: WorkspaceExtConfig, [onComponentLoadSlot, onComponentChangeSlot, onComponentAddSlot, onComponentRemoveSlot, onAspectsResolveSlot, onRootAspectAddedSlot, onBitmapChangeSlot, onWorkspaceConfigChangeSlot,]: [ OnComponentLoadSlot, OnComponentChangeSlot, OnComponentAddSlot, OnComponentRemoveSlot, OnAspectsResolveSlot, OnRootAspectAddedSlot, OnBitmapChangeSlot, OnWorkspaceConfigChangeSlot ], harmony: Harmony): Promise; static defineRuntime: string; } export default WorkspaceMain;