import type { PublicReleaseRingId } from '@happier-dev/release-runtime/releaseRings';
import type { FirstPartyComponentId } from './componentCatalog.js';
export interface PreparedFirstPartyComponentPayload {
    componentId: FirstPartyComponentId;
    channel: PublicReleaseRingId;
    versionId: string;
    payloadRoot: string;
    source: string | null;
    cleanup: () => Promise<void>;
}
export type FirstPartyReleaseArtifactSource = Readonly<{
    kind: 'github-release';
    githubRepo?: string;
    githubToken?: string;
    userAgent?: string;
}>;
export declare function prepareFirstPartyComponentPayloadFromGitHubRelease(params: Readonly<{
    componentId: FirstPartyComponentId;
    channel: PublicReleaseRingId;
    os?: string;
    arch?: string;
    artifactSource?: FirstPartyReleaseArtifactSource;
    githubRepo?: string;
    githubToken?: string;
    userAgent?: string;
    minisignPubkeyFile?: string;
}>): Promise<PreparedFirstPartyComponentPayload>;
//# sourceMappingURL=prepareFirstPartyComponentPayloadFromGitHubRelease.d.ts.map