UNPKG

@endo/compartment-mapper

Version:

The compartment mapper assembles Node applications in a sandbox

49 lines 2.58 kB
/** * Const string to identify the internal attenuators compartment */ export const ATTENUATORS_COMPARTMENT: "<ATTENUATORS>"; export function detectAttenuators(policy?: Policy): Array<string>; export function dependencyAllowedByPolicy(namingKit: PackageNamingKit, packagePolicy: PackagePolicy): boolean; /** * Returns the policy applicable to the canonicalName of the package * * @overload * @param {PackageNamingKit} namingKit - a key in the policy resources spec is derived from these * @param {SomePolicy} policy - user supplied policy * @returns {SomePackagePolicy} packagePolicy if policy was specified */ export function getPolicyForPackage(namingKit: PackageNamingKit, policy: SomePolicy): SomePackagePolicy; /** * Returns `undefined` * * @overload * @param {PackageNamingKit} namingKit - a key in the policy resources spec is derived from these * @param {SomePolicy} [policy] - user supplied policy * @returns {SomePackagePolicy|undefined} packagePolicy if policy was specified */ export function getPolicyForPackage(namingKit: PackageNamingKit, policy?: SomePolicy | undefined): SomePackagePolicy | undefined; export function makeDeferredAttenuatorsProvider(compartments: Record<string, Compartment>, compartmentDescriptors: Record<string, CompartmentDescriptor>): DeferredAttenuatorsProvider; export function attenuateGlobals(globalThis: object, globals: object, packagePolicy: PackagePolicy, attenuators: DeferredAttenuatorsProvider, pendingJobs: Array<Promise<any>>, name?: string): void; export function enforceModulePolicy(specifier: string, compartmentDescriptor: CompartmentDescriptor, { exit, errorHint }?: EnforceModulePolicyOptions): void; export function attenuateModuleHook(specifier: string, originalModuleRecord: import("ses").ThirdPartyStaticModuleInterface, policy: PackagePolicy, attenuators: DeferredAttenuatorsProvider): Promise<import("ses").ThirdPartyStaticModuleInterface>; /** * Options for {@link enforceModulePolicy} */ export type EnforceModulePolicyOptions = { /** * - Whether it is an exit module */ exit?: boolean | undefined; /** * - Error hint message */ errorHint?: string | undefined; }; import type { Policy } from './types.js'; import type { PackageNamingKit } from './types.js'; import type { PackagePolicy } from './types.js'; import type { SomePolicy } from './types.js'; import type { SomePackagePolicy } from './types.js'; import type { CompartmentDescriptor } from './types.js'; import type { DeferredAttenuatorsProvider } from './types.js'; //# sourceMappingURL=policy.d.ts.map