/*---------------------------------------------------------------------------------------------
 *  Copyright (c) Microsoft Corporation. All rights reserved.
 *  Licensed under the MIT License. See License.txt in the project root for license information.
 *--------------------------------------------------------------------------------------------*/
import { IStringDictionary } from "../../../base/common/collections.mjs";
import { ISandboxConfiguration } from "../../../base/parts/sandbox/common/sandboxTypes.mjs";
import { NativeParsedArgs } from "../../environment/common/argv.mjs";
import { LogLevel } from "../../log/common/log.mjs";
import { IUserDataProfile } from "../../userDataProfile/common/userDataProfile.mjs";
import { PolicyDefinition, PolicyValue } from "../../policy/common/policy.mjs";
import { UriDto } from "../../../base/common/uri.mjs";
export interface ISharedProcess {
    /**
     * Toggles the visibility of the otherwise hidden
     * shared process window.
     */
    toggle(): Promise<void>;
}
export interface ISharedProcessConfiguration extends ISandboxConfiguration {
    readonly machineId: string;
    readonly args: NativeParsedArgs;
    readonly logLevel: LogLevel;
    readonly profiles: readonly UriDto<IUserDataProfile>[];
    readonly policiesData?: IStringDictionary<{
        definition: PolicyDefinition;
        value: PolicyValue;
    }>;
}
