// noinspection JSUnusedGlobalSymbols interface UploadUrlGeneral { mode: "general"; url: string; } interface UploadUrlEach { mode: "each"; suite: string | null; mysekai: string | null; birthday: string | null; } interface UploadMixinStep { name: string; hosts: ("cn" | "jp" | "en" | "tw" | "kr" | string)[]; target: "suite" | "mysekai" | "birthday" | "" | string; } interface UploadMixinProfile { name: string; steps: UploadMixinStep[]; } interface UploadMixin { profiles: UploadMixinProfile[]; } export interface UploadProfileCustom { type: "CUSTOM"; id: string; uploadUrl: UploadUrlGeneral | UploadUrlEach; headers: Record; mixin?: UploadMixin; }