/*---------------------------------------------------------------------------------------------
 *  Copyright (c) Microsoft Corporation. All rights reserved.
 *  Licensed under the MIT License. See License.txt in the project root for license information.
 *--------------------------------------------------------------------------------------------*/

import { Event } from '@sussudio/base/common/event.mjs';
import { IStorageDatabase } from '@sussudio/base/parts/storage/common/storage.mjs';
import { IMainProcessService } from '../../ipc/electron-sandbox/services.mjs';
import { ILogService } from '../../log/common/log.mjs';
import {
	AbstractUserDataProfileStorageService,
	IProfileStorageChanges,
	IUserDataProfileStorageService,
} from '../common/userDataProfileStorageService.mjs';
import { IStorageService } from '../../storage/common/storage.mjs';
import { IUserDataProfile, IUserDataProfilesService } from '../common/userDataProfile.mjs';
export declare class UserDataProfileStorageService
	extends AbstractUserDataProfileStorageService
	implements IUserDataProfileStorageService
{
	private readonly mainProcessService;
	private readonly _onDidChange;
	readonly onDidChange: Event<IProfileStorageChanges>;
	constructor(
		mainProcessService: IMainProcessService,
		userDataProfilesService: IUserDataProfilesService,
		storageService: IStorageService,
		logService: ILogService,
	);
	protected createStorageDatabase(profile: IUserDataProfile): Promise<IStorageDatabase>;
}
