import { Plugin } from '..' ; import { Dimension } from '../../Dimension' ; import { Database } from '../Database' ; import { Tournament } from '../../Tournament' ; export abstract class Storage extends Plugin { /** Default configs */ public configs : Storage . Configs = { } ; /**
     * Performs any intialization tasks
     * Resolves when done
     */ abstract async initialize ( dimension ) ; param file param userID param tournamentID abstract async uploadTournamentFile ( file , user , tournament ) ; param file param destinationName abstract async upload ( file , destinationName ) ; param key param destination param useCached abstract async download ( key , destination , useCached ) ; param key abstract async getDownloadURL ( key ) ; } export namespace Storage { /**
     * Storage configs interface
     */ export interface Configs { } }