import type { Plugin } from "../../../../extensions/bundler/index.js"; import type { RuntimeAdapter } from "../../../../platform/adapters/base.js"; import { type LockfileManager } from "../../../../utils/import-lockfile.js"; import { type DependencyPinningSourceInput } from "../../../../transforms/esm/package-registry.js"; export interface RelativeFsPluginOptions { enforceBrowserBoundaries?: boolean; serverExternalPackages?: readonly string[]; /** * Root-bound, symlink-safe, bounded read authority for browser builds. When * supplied, the read itself replaces mutable directory-walk admission. */ readBrowserModule?: (path: string) => Promise; } export type BrowserModulePathStatus = "trusted" | "symlink" | "unavailable"; export declare function inspectBrowserModulePath(projectDir: string, filePath: string, adapter: RuntimeAdapter): Promise; /** Create relative file system plugin for resolving imports via adapter's fs */ export declare function createRelativeFsPlugin(projectDir: string, adapter: RuntimeAdapter, options?: RelativeFsPluginOptions): Plugin; interface BareExternalPluginOptions { bundle?: boolean; lockfile?: LockfileManager; projectDir?: string; projectId?: string; dependencyPinningCacheKey?: string; dependencyPinningDependencies?: Readonly>; dependencyPinningSource?: DependencyPinningSourceInput; strict?: boolean; importMapImports?: Record; /** Bare npm package roots explicitly declared as server-only by the project. */ serverExternalPackages?: readonly string[]; } /** Create bare module external plugin that rewrites npm imports to esm.sh URLs */ export declare function createBareExternalPlugin(options?: BareExternalPluginOptions | boolean): Plugin; interface HttpExternalPluginOptions { moduleServerOrigin?: string; dependencyPinningCacheKey?: string; projectDir?: string; serverExternalPackages?: readonly string[]; } export declare function createHttpExternalPlugin(options?: HttpExternalPluginOptions): Plugin; export {}; //# sourceMappingURL=esbuild-plugins.d.ts.map