import { Platform } from '@expo/eas-build-job'; import { ResolvedArchiveSource } from './ArchiveSource'; import { SubmissionContext } from './context'; import { AnalyticsEvent } from '../analytics/AnalyticsManager'; import { AndroidSubmissionConfigInput, IosSubmissionConfigInput, SubmissionArchiveSourceInput, SubmissionFragment } from '../graphql/generated'; export interface SubmissionInput
{ projectId: string; submissionConfig: P extends Platform.ANDROID ? AndroidSubmissionConfigInput : IosSubmissionConfigInput; buildId?: string; archiveSource?: SubmissionArchiveSourceInput; } interface AnalyticEvents { attemptEvent: AnalyticsEvent; successEvent: AnalyticsEvent; failureEvent: AnalyticsEvent; } export default abstract class BaseSubmitter
{ protected ctx: SubmissionContext
;
protected options: SubmissionOptions;
protected sourceOptionResolver: {
[K in keyof ResolvedSourceOptions]: () => Promise , options: SubmissionOptions, sourceOptionResolver: {
[K in keyof ResolvedSourceOptions]: () => Promise ): Promise