import { Maybe } from 'true-myth'; import type { ArtifactsBuilder } from '../artifacts/artifacts-builder.ts'; import type { FileDescription } from '../file-manager/file-description.ts'; import type { ArtifactPublishPackage } from '../published-package/published-package.ts'; import { fetchPublishedArtifacts } from './fetch-published-artifacts.ts'; import type { RegistryClient } from './registry/registry-client.ts'; type Second = TValues extends readonly [ unknown, infer TValue, ...(readonly unknown[]) ] ? TValue : never; type Fourth = TValues extends readonly [ unknown, unknown, unknown, infer TValue, ...(readonly unknown[]) ] ? TValue : never; type RegistryClientPublishArguments = Parameters; type ExtraFiles = readonly FileDescription[]; type PublicationOutcome = Awaited>; type PublishSettings = Fourth; type RegistrySettings = Second>; type VersioningSettings = { readonly automatic: false; readonly provideVersion: unknown; } | { readonly automatic: false; readonly version: string; } | { readonly automatic: true; }; type PreviousReleaseArtifacts = Awaited>; type PublishOptions = { readonly bundle: ArtifactPublishPackage; readonly registrySettings: RegistrySettings; readonly publishSettings: PublishSettings; readonly stage: boolean; readonly extraFiles?: ExtraFiles; }; type AlreadyPublishedCheckOptions = { readonly bundle: ArtifactPublishPackage; readonly registrySettings: RegistrySettings; readonly extraFiles?: ExtraFiles; }; type CurrentVersionLookupOptions = { readonly name: string; readonly registrySettings: RegistrySettings; readonly stage: boolean; readonly versioning: VersioningSettings; }; type BundlePublishedCheckResult = { readonly alreadyPublishedAsLatest: boolean; readonly previousReleaseArtifacts: PreviousReleaseArtifacts; }; export type BundleEmitter = { publish: (options: PublishOptions) => Promise; determineCurrentVersion: (options: CurrentVersionLookupOptions) => Promise>; checkBundleAlreadyPublished: (options: AlreadyPublishedCheckOptions) => Promise; }; export {}; //# sourceMappingURL=emitter.d.ts.map