lavamoat-core
Version:
LavaMoat kernel and utils
40 lines • 1.8 kB
TypeScript
export type ModuleToPackageFallbackFn = (requestedName: string) => string | undefined;
export type AggregateDepsOptions = {
packageModules: Record<string, import("./moduleRecord").LavamoatModuleRecord>;
moduleIdToModuleRecord: Map<string, import("./moduleRecord").LavamoatModuleRecord>;
moduleToPackageFallback?: ModuleToPackageFallbackFn | undefined;
};
export type GeneratePolicyFn = (opts: Partial<ModuleInspectorOptions> & {
policyOverride?: import("./schema").LavaMoatPolicyOverrides;
moduleToPackageFallback?: (value: string) => string | undefined;
}) => import("./schema").LavaMoatPolicy | import("./schema").LavaMoatPolicyDebug;
export type InspectModuleFn = (moduleRecord: import("./moduleRecord").LavamoatModuleRecord, opts?: Partial<ModuleInspectorOptions> | undefined) => any;
export type ModuleInspectorOptions = {
isBuiltin: (value: string) => boolean;
includeDebugInfo?: boolean | undefined;
moduleToPackageFallback?: ((specifier: string) => string | undefined) | undefined;
};
export type ModuleInspectorMembers = {
generatePolicy: GeneratePolicyFn;
inspectModule: InspectModuleFn;
};
export type ModuleInspector = import("node:events").EventEmitter & ModuleInspectorMembers;
export type AST = import("@babel/parser").ParseResult<import("@babel/types").File> | import("@babel/types").File;
export const rootSlug: "$root$";
/**
* @param {ModuleInspectorOptions} opts
* @returns {ModuleInspector}
*/
export function createModuleInspector(opts: ModuleInspectorOptions): ModuleInspector;
/**
* @param {string} policyName
* @returns
*/
export function getDefaultPaths(policyName: string): {
policiesDir: string;
policyDir: string;
primary: string;
override: string;
debug: string;
};
//# sourceMappingURL=generatePolicy.d.ts.map