1import aws from 'aws-sdk'; 2import { Platform } from '../ProjectVersions'; 3 4export { Platform }; 5 6export type S3Client = aws.S3; 7 8export interface ClientBuilder { 9 platform: Platform; 10 getAppPath: () => string; 11 getClientUrl: (appVersion: string) => string; 12 getAppVersionAsync: () => Promise<string>; 13 buildAsync: (flavor?: ClientBuildFlavor) => Promise<void>; 14 uploadBuildAsync: (s3Client: S3Client, appVersion: string) => Promise<void>; 15} 16 17export enum ClientBuildFlavor { 18 VERSIONED = 'versioned', 19 UNVERSIONED = 'unversioned', 20} 21