import './vscode/src/vs/editor/editor.api.js';
import { IDisposable } from './vscode/src/vs/base/common/lifecycle.js';
export { IMarkdownString, MarkdownStringTrustedOptions } from './vscode/src/vs/base/common/htmlContent.js';
export { IContextKeyService } from './vscode/src/vs/platform/contextkey/common/contextkey.service.js';
import { ServiceIdentifier, GetLeadingNonServiceArgs, ServicesAccessor } from './vscode/src/vs/platform/instantiation/common/instantiation.js';
export { IInstantiationService } from './vscode/src/vs/platform/instantiation/common/instantiation.js';
export { IDimension } from './vscode/src/vs/editor/common/core/dimension.js';
export { default as Severity } from './vscode/src/vs/base/common/severity.js';
export { ILanguageService } from './vscode/src/vs/editor/common/languages/language.js';
export { ILanguageConfigurationService } from './vscode/src/vs/editor/common/languages/languageConfigurationRegistry.js';
export { IColorTheme } from './vscode/src/vs/platform/theme/common/themeService.js';
export { ICodeEditorService } from './vscode/src/vs/editor/browser/services/codeEditorService.js';
export { IConfigurationService } from './vscode/src/vs/platform/configuration/common/configuration.service.js';
export { INotificationService } from './vscode/src/vs/platform/notification/common/notification.service.js';
export { IStorageService } from './vscode/src/vs/platform/storage/common/storage.service.js';
export { ITextModelContentProvider, ITextModelService } from './vscode/src/vs/editor/common/services/resolverService.js';
import { WorkbenchContributionInstantiation } from './vscode/src/vs/workbench/common/contributions.js';
export { ILazyWorkbenchContributionInstantiation, IOnEditorWorkbenchContributionInstantiation, WorkbenchPhase } from './vscode/src/vs/workbench/common/contributions.js';
export { CloseDirection, EditorInputWithOptions, EditorsOrder, GroupIdentifier, IActiveEditorChangeEvent, IEditorCloseEvent, IEditorControl, IEditorPane, IEditorPartOptions, IEditorPartOptionsChangeEvent, IEditorWillMoveEvent, IEditorWillOpenEvent, IFindEditorOptions, IMatchEditorOptions, IUntypedEditorInput, IVisibleEditorPane } from './vscode/src/vs/workbench/common/editor.js';
export { IFileService } from './vscode/src/vs/platform/files/common/files.service.js';
export { IAction } from './vscode/src/vs/base/common/actions.js';
export { INeverShowAgainOptions, INotification, INotificationActions, INotificationHandle, INotificationProgress, INotificationProgressProperties, INotificationProperties, IPromptChoice, IPromptChoiceWithMenu, IPromptOptions, IStatusMessageOptions, NeverShowAgainScope, NoOpNotification, NoOpProgress, NotificationMessage, NotificationPriority, NotificationsFilter } from './vscode/src/vs/platform/notification/common/notification.js';
export { ITextFileService } from './vscode/src/vs/workbench/services/textfile/common/textfiles.service.js';
export { ICommandService } from './vscode/src/vs/platform/commands/common/commands.service.js';
export { IAccessibilitySignalService } from './vscode/src/vs/platform/accessibilitySignal/browser/accessibilitySignalService.service.js';
export { IWorkbenchLayoutService } from './vscode/src/vs/workbench/services/layout/browser/layoutService.service.js';
export { IClipboardService } from './vscode/src/vs/platform/clipboard/common/clipboardService.service.js';
export { ILanguageFeaturesService } from './vscode/src/vs/editor/common/services/languageFeatures.js';
export { IThemeService } from './vscode/src/vs/platform/theme/common/themeService.service.js';
export { ILogService, ILoggerService } from './vscode/src/vs/platform/log/common/log.service.js';
export { IKeybindingService } from './vscode/src/vs/platform/keybinding/common/keybinding.service.js';
export { IWorkspaceContextService } from './vscode/src/vs/platform/workspace/common/workspace.service.js';
export { IEditorWorkerService } from './vscode/src/vs/editor/common/services/editorWorker.js';
export { IMarkerService } from './vscode/src/vs/platform/markers/common/markers.service.js';
export { IOpenerService } from './vscode/src/vs/platform/opener/common/opener.service.js';
export { IModelService } from './vscode/src/vs/editor/common/services/model.js';
export { ITelemetryService } from './vscode/src/vs/platform/telemetry/common/telemetry.service.js';
export { IWorkspaceTrustEnablementService, IWorkspaceTrustManagementService, IWorkspaceTrustRequestService } from './vscode/src/vs/platform/workspace/common/workspaceTrust.service.js';
export { IDialogService, IFileDialogService } from './vscode/src/vs/platform/dialogs/common/dialogs.service.js';
export { StorageScope, StorageTarget } from './vscode/src/vs/platform/storage/common/storage.js';
import { IEditorOverrideServices } from './vscode/src/vs/editor/standalone/browser/standaloneServices.js';
export { StandaloneServices } from './vscode/src/vs/editor/standalone/browser/standaloneServices.js';
import { IWorkbenchConstructionOptions } from './vscode/src/vs/workbench/browser/web.api.js';
export { IProductService } from './vscode/src/vs/platform/product/common/productService.service.js';
export { IConfigurationChangeEvent } from './vscode/src/vs/platform/configuration/common/configuration.js';
import { EnvironmentOverride } from './workbench.js';
export { SyncDescriptor } from './vscode/src/vs/platform/instantiation/common/descriptors.js';
export { IBulkEditService } from './vscode/src/vs/editor/browser/services/bulkEditService.js';
export { IQuickInputService } from './vscode/src/vs/platform/quickinput/common/quickInput.service.js';
export { IUriIdentityService } from './vscode/src/vs/platform/uriIdentity/common/uriIdentity.service.js';
export { IBreadcrumbsService } from './vscode/src/vs/workbench/browser/parts/editor/breadcrumbs.service.js';
export { IEditorGroupsService } from './vscode/src/vs/workbench/services/editor/common/editorGroupsService.service.js';
export { EditorGroupLayout, GroupDirection, GroupLayoutArgument, GroupLocation, GroupOrientation, GroupsArrangement, GroupsOrder, ICloseAllEditorsOptions, ICloseEditorOptions, ICloseEditorsFilter, IEditorGroup, IEditorReplacement, IEditorSideGroup, IFindGroupScope, IMergeGroupOptions, MergeGroupMode } from './vscode/src/vs/workbench/services/editor/common/editorGroupsService.js';
export { IEditorOptions, IResourceEditorInput, ITextEditorOptions } from './vscode/src/vs/platform/editor/common/editor.js';
export { EditorInput } from './vscode/src/vs/workbench/common/editor/editorInput.js';
export { IGroupModelChangeEvent } from './vscode/src/vs/workbench/common/editor/editorGroupModel.js';
export { IEditorService } from './vscode/src/vs/workbench/services/editor/common/editorService.service.js';
export { IEditorResolverService } from './vscode/src/vs/workbench/services/editor/common/editorResolverService.service.js';
export { ITextEditorService } from './vscode/src/vs/workbench/services/textfile/common/textEditorService.service.js';
export { IWorkbenchEnvironmentService } from './vscode/src/vs/workbench/services/environment/common/environmentService.service.js';
export { IHostService } from './vscode/src/vs/workbench/services/host/browser/host.service.js';
export { ILanguageStatusService } from './vscode/src/vs/workbench/services/languageStatus/common/languageStatusService.service.js';
export { IPaneCompositePartService } from './vscode/src/vs/workbench/services/panecomposite/browser/panecomposite.service.js';
export { IPathService } from './vscode/src/vs/workbench/services/path/common/pathService.service.js';
export { IWorkingCopyFileService } from './vscode/src/vs/workbench/services/workingCopy/common/workingCopyFileService.service.js';
export { ISnippetsService } from './vscode/src/vs/workbench/contrib/snippets/browser/snippets.service.js';
export { IDebugService } from './vscode/src/vs/workbench/contrib/debug/common/debug.service.js';
export { LogLevel } from './vscode/src/vs/platform/log/common/log.js';
export { IViewDescriptorService } from './vscode/src/vs/workbench/common/views.service.js';
export { IViewsService } from './vscode/src/vs/workbench/services/views/common/viewsService.service.js';
export { ILayoutService } from './vscode/src/vs/platform/layout/browser/layoutService.service.js';
export { IPreferencesService } from './vscode/src/vs/workbench/services/preferences/common/preferences.service.js';
export { IPreferencesSearchService } from './vscode/src/vs/workbench/contrib/preferences/common/preferences.service.js';
export { IKeybindingEditingService } from './vscode/src/vs/workbench/services/keybinding/common/keybindingEditing.service.js';
export { IOutputService } from './vscode/src/vs/workbench/services/output/common/output.service.js';
export { IHistoryService } from './vscode/src/vs/workbench/services/history/common/history.service.js';
export { GoFilter, GoScope } from './vscode/src/vs/workbench/services/history/common/history.js';
export { IRemoteAgentService } from './vscode/src/vs/workbench/services/remote/common/remoteAgentService.service.js';
export { IRemoteAuthorityResolverService } from './vscode/src/vs/platform/remote/common/remoteAuthorityResolver.service.js';
export { IRemoteSocketFactoryService } from './vscode/src/vs/platform/remote/common/remoteSocketFactoryService.service.js';
export { IFilesConfigurationService } from './vscode/src/vs/workbench/services/filesConfiguration/common/filesConfigurationService.service.js';
export { ILabelService } from './vscode/src/vs/platform/label/common/label.service.js';
export { ILanguagePackService } from './vscode/src/vs/platform/languagePacks/common/languagePacks.service.js';
export { ILocaleService } from './vscode/src/vs/workbench/services/localization/common/locale.service.js';
export { DialogType, IBaseDialogOptions, ICheckbox, ICheckboxResult, IConfirmDialogArgs, IConfirmation, IConfirmationResult, ICustomDialogMarkdown, ICustomDialogOptions, IDialogArgs, IDialogHandler, IDialogResult, IInput, IInputDialogArgs, IInputElement, IInputResult, IPrompt, IPromptBaseButton, IPromptButton, IPromptCancelButton, IPromptDialogArgs, IPromptResult, IPromptResultWithCancel, IPromptWithCustomCancel, IPromptWithDefaultCancel } from './vscode/src/vs/platform/dialogs/common/dialogs.js';
export { IActivityService } from './vscode/src/vs/workbench/services/activity/common/activity.service.js';
export { IBadge } from './vscode/src/vs/workbench/services/activity/common/activity.js';
export { IHoverService } from './vscode/src/vs/platform/hover/browser/hover.service.js';
export { IExplorerService } from './vscode/src/vs/workbench/contrib/files/browser/files.service.js';
export { IStatusbarService } from './vscode/src/vs/workbench/services/statusbar/browser/statusbar.service.js';
export { ITitleService } from './vscode/src/vs/workbench/services/title/browser/titleService.service.js';
export { IBannerService } from './vscode/src/vs/workbench/services/banner/browser/bannerService.service.js';
export { IWorkspaceTrustUriInfo } from './vscode/src/vs/platform/workspace/common/workspaceTrust.js';
export { ISecretStorageService } from './vscode/src/vs/platform/secrets/common/secrets.service.js';
export { ISecretStorageProvider } from './vscode/src/vs/platform/secrets/common/secrets.js';
export { IProductConfiguration } from './vscode/src/vs/base/common/product.js';

declare function initialize(overrides: IEditorOverrideServices, container?: HTMLElement, configuration?: IWorkbenchConstructionOptions, env?: EnvironmentOverride): Promise<void>;
declare function getService<T>(identifier: ServiceIdentifier<T>): Promise<T>;
declare function createInstance<Ctor extends new (...args: any[]) => any, R extends InstanceType<Ctor>>(ctor: Ctor, ...args: GetLeadingNonServiceArgs<ConstructorParameters<Ctor>>): Promise<R>;
declare function createInstanceSync<Ctor extends new (...args: any[]) => any, R extends InstanceType<Ctor>>(ctor: Ctor, ...args: GetLeadingNonServiceArgs<ConstructorParameters<Ctor>>): R;
/**
 * Equivalent to `StandaloneServices.withServices` except the callback is called when the services are ready, not just initialized
 */
declare function withReadyServices(callback: (serviceAccessor: ServicesAccessor) => IDisposable): IDisposable;
declare const registerWorkbenchContribution: (id: string, contribution: (accessor: ServicesAccessor) => void, instantiation: WorkbenchContributionInstantiation) => void;

export { IEditorOverrideServices, IWorkbenchConstructionOptions, ServicesAccessor, WorkbenchContributionInstantiation, createInstance, createInstanceSync, getService, initialize, registerWorkbenchContribution, withReadyServices };
