/** * Pack expansion helpers for cross-type dependency expansion. * * - expandPackInstallRefs: Expands a pack ref into install refs (pack + dependencies) * * @experimental This API is unstable and may change without notice. */ import * as Effect from "effect/Effect"; import type * as Option from "effect/Option"; import type { AppError } from "../app-error/index.js"; import { type ExtensionType } from "../extensions/index.js"; import type { ExtensionRef } from "../extensions/index.js"; import type { PackRef } from "./refs.js"; import type { SourceHostProvidersService } from "../source-resolution/index.js"; import type * as Duration from "effect/Duration"; import { type PackDependencyRefResolver, type ReleaseAgeAwarePackDependencyResolution, type WorkspacePackDependencyResolver } from "./dependency-resolution.js"; import type { ReleaseAgeEvaluation } from "../registry/index.js"; /** * Expand a pack ref into its cross-type dependency refs. * * Returns the pack ref first, followed by dependency refs in declaration * order. Only dependency types listed in `supportedDependencyTypes` are * included. * * Dependency refs use the pack's registry source and empty integrity * (integrity is resolved during materialization, not at expansion time). */ export declare const expandPackInstallRefs: (args: { readonly pack: PackRef; readonly supportedDependencyTypes: ReadonlyArray; readonly sources: SourceHostProvidersService; readonly minimumReleaseAge?: Option.Option; readonly workspaceResolver?: WorkspacePackDependencyResolver; readonly dependencyResolver?: PackDependencyRefResolver; }) => Effect.Effect, AppError>; export type ReleaseAgeAwarePackExpansion = { readonly kind: "selected"; readonly refs: ReadonlyArray; readonly holdbacks: Extract["holdbacks"]; readonly bypasses: Extract["bypasses"]; } | Extract; export declare const expandPackInstallRefsWithReleaseAge: (args: { readonly pack: PackRef; readonly supportedDependencyTypes: ReadonlyArray; readonly sources: SourceHostProvidersService; readonly releaseAgeEvaluation: ReleaseAgeEvaluation; readonly workspaceResolver?: WorkspacePackDependencyResolver; readonly dependencyResolver?: PackDependencyRefResolver; }) => Effect.Effect; //# sourceMappingURL=expansion.d.ts.map