Browse Source

Add uppy.use() overloads to plugin typings.

Renée Kooi 6 years ago
parent
commit
73202c2108

+ 6 - 0
packages/@uppy/aws-s3-multipart/types/index.d.ts

@@ -20,3 +20,9 @@ export interface AwsS3MultipartOptions extends PluginOptions {
 export default class AwsS3Multipart extends Plugin {
   constructor(uppy: Uppy, opts: Partial<AwsS3MultipartOptions>);
 }
+
+declare module '@uppy/core' {
+  export interface Uppy {
+    use(pluginClass: typeof AwsS3Multipart, opts: Partial<AwsS3MultipartOptions>): Uppy;
+  }
+}

+ 6 - 0
packages/@uppy/aws-s3/types/index.d.ts

@@ -17,3 +17,9 @@ export interface AwsS3Options extends PluginOptions {
 export default class AwsS3 extends Plugin {
   constructor(uppy: Uppy, opts: Partial<AwsS3Options>);
 }
+
+declare module '@uppy/core' {
+  export interface Uppy {
+    use(pluginClass: typeof AwsS3, opts: Partial<AwsS3Options>): Uppy;
+  }
+}

+ 1 - 1
packages/@uppy/core/types/index.d.ts

@@ -112,7 +112,7 @@ export class Uppy {
   retryUpload(fileID: string): any;
   reset(): void;
   getID(): string;
-  use(pluginClass: typeof Plugin, opts: object): Uppy;
+  use<T extends typeof Plugin>(pluginClass: T, opts: object): Uppy;
   getPlugin(name: string): Plugin;
   iteratePlugins(callback: (plugin: Plugin) => void): void;
   removePlugin(instance: Plugin): void;

+ 6 - 0
packages/@uppy/dashboard/types/index.d.ts

@@ -33,3 +33,9 @@ export default class Dashboard extends Plugin {
   install(): void;
   uninstall(): void;
 }
+
+declare module '@uppy/core' {
+  export interface Uppy {
+    use(pluginClass: typeof Dashboard, opts: Partial<DashboardOptions>): Uppy;
+  }
+}

+ 6 - 0
packages/@uppy/drag-drop/types/index.d.ts

@@ -11,3 +11,9 @@ export interface DragDropOptions extends PluginOptions {
 export default class DragDrop extends Plugin {
   constructor(uppy: Uppy, opts: Partial<DragDropOptions>);
 }
+
+declare module '@uppy/core' {
+  export interface Uppy {
+    use(pluginClass: typeof DragDrop, opts: Partial<DragDropOptions>): Uppy;
+  }
+}

+ 6 - 0
packages/@uppy/dropbox/types/index.d.ts

@@ -7,3 +7,9 @@ export interface DropboxOptions extends PluginOptions {
 export default class Dropbox extends Plugin {
   constructor(uppy: Uppy, opts: Partial<DropboxOptions>);
 }
+
+declare module '@uppy/core' {
+  export interface Uppy {
+    use(pluginClass: typeof Dropbox, opts: Partial<DropboxOptions>): Uppy;
+  }
+}

+ 6 - 0
packages/@uppy/file-input/types/index.d.ts

@@ -8,3 +8,9 @@ export interface FileInputOptions extends PluginOptions {
 export default class FileInput extends Plugin {
   constructor(uppy: Uppy, opts: Partial<FileInputOptions>);
 }
+
+declare module '@uppy/core' {
+  export interface Uppy {
+    use(pluginClass: typeof FileInput, opts: Partial<FileInputOptions>): Uppy;
+  }
+}

+ 6 - 0
packages/@uppy/form/types/index.d.ts

@@ -11,3 +11,9 @@ export interface FormOptions extends PluginOptions {
 export default class Form extends Plugin {
   constructor(uppy: Uppy, opts: Partial<FormOptions>);
 }
+
+declare module '@uppy/core' {
+  export interface Uppy {
+    use(pluginClass: typeof Form, opts: Partial<FormOptions>): Uppy;
+  }
+}

+ 6 - 0
packages/@uppy/golden-retriever/types/index.d.ts

@@ -9,3 +9,9 @@ export interface GoldenRetrieverOptions extends PluginOptions {
 export default class GoldenRetriever extends Plugin {
   constructor(uppy: Uppy, opts: Partial<GoldenRetrieverOptions>);
 }
+
+declare module '@uppy/core' {
+  export interface Uppy {
+    use(pluginClass: typeof GoldenRetriever, opts: Partial<GoldenRetrieverOptions>): Uppy;
+  }
+}

+ 6 - 0
packages/@uppy/google-drive/types/index.d.ts

@@ -8,3 +8,9 @@ export interface GoogleDriveOptions extends PluginOptions {
 export default class GoogleDrive extends Plugin {
   constructor(uppy: Uppy, opts: Partial<GoogleDriveOptions>);
 }
+
+declare module '@uppy/core' {
+  export interface Uppy {
+    use(pluginClass: typeof GoogleDrive, opts: Partial<GoogleDriveOptions>): Uppy;
+  }
+}

+ 6 - 0
packages/@uppy/informer/types/index.d.ts

@@ -14,3 +14,9 @@ export interface InformerOptions extends PluginOptions {
 export default class Informer extends Plugin {
   constructor(uppy: Uppy, opts: Partial<InformerOptions>);
 }
+
+declare module '@uppy/core' {
+  export interface Uppy {
+    use(pluginClass: typeof Informer, opts: Partial<InformerOptions>): Uppy;
+  }
+}

+ 6 - 0
packages/@uppy/instagram/types/index.d.ts

@@ -8,3 +8,9 @@ export interface InstagramOptions extends PluginOptions {
 export default class Instagram extends Plugin {
   constructor(uppy: Uppy, opts: Partial<InstagramOptions>);
 }
+
+declare module '@uppy/core' {
+  export interface Uppy {
+    use(pluginClass: typeof Instagram, opts: Partial<InstagramOptions>): Uppy;
+  }
+}

+ 6 - 0
packages/@uppy/progress-bar/types/index.d.ts

@@ -8,3 +8,9 @@ export interface ProgressBarOptions extends PluginOptions {
 export default class ProgressBar extends Plugin {
   constructor(uppy: Uppy, opts: Partial<ProgressBarOptions>);
 }
+
+declare module '@uppy/core' {
+  export interface Uppy {
+    use(pluginClass: typeof ProgressBar, opts: Partial<ProgressBarOptions>): Uppy;
+  }
+}

+ 6 - 0
packages/@uppy/redux-dev-tools/types/index.d.ts

@@ -6,3 +6,9 @@ export interface ReduxDevToolsOptions extends PluginOptions {
 export default class ReduxDevTools extends Plugin {
   constructor(uppy: Uppy, opts: Partial<ReduxDevToolsOptions>);
 }
+
+declare module '@uppy/core' {
+  export interface Uppy {
+    use(pluginClass: typeof ReduxDevTools, opts: Partial<ReduxDevToolsOptions>): Uppy;
+  }
+}

+ 6 - 0
packages/@uppy/status-bar/types/index.d.ts

@@ -9,3 +9,9 @@ export interface StatusBarOptions extends PluginOptions {
 export default class StatusBar extends Plugin {
   constructor(uppy: Uppy, opts: Partial<StatusBarOptions>);
 }
+
+declare module '@uppy/core' {
+  export interface Uppy {
+    use(pluginClass: typeof StatusBar, opts: Partial<StatusBarOptions>): Uppy;
+  }
+}

+ 6 - 0
packages/@uppy/thumbnail-generator/types/index.d.ts

@@ -7,3 +7,9 @@ export interface ThumbnailGeneratorOptions extends PluginOptions {
 export default class ThumbnailGenerator extends Plugin {
   constructor(uppy: Uppy, opts: Partial<ThumbnailGeneratorOptions>);
 }
+
+declare module '@uppy/core' {
+  export interface Uppy {
+    use(pluginClass: typeof ThumbnailGenerator, opts: Partial<ThumbnailGeneratorOptions>): Uppy;
+  }
+}

+ 6 - 0
packages/@uppy/transloadit/types/index.d.ts

@@ -20,3 +20,9 @@ export interface TransloaditOptions extends PluginOptions {
 export default class Transloadit extends Plugin {
   constructor(uppy: Uppy, opts: Partial<TransloaditOptions>);
 }
+
+declare module '@uppy/core' {
+  export interface Uppy {
+    use(pluginClass: typeof Transloadit, opts: Partial<TransloaditOptions>): Uppy;
+  }
+}

+ 6 - 0
packages/@uppy/tus/types/index.d.ts

@@ -12,3 +12,9 @@ export interface TusOptions extends PluginOptions {
 export default class Tus extends Plugin {
   constructor(uppy: Uppy, opts: Partial<TusOptions>);
 }
+
+declare module '@uppy/core' {
+  export interface Uppy {
+    use(pluginClass: typeof Tus, opts: Partial<TusOptions>): Uppy;
+  }
+}

+ 6 - 0
packages/@uppy/url/types/index.d.ts

@@ -8,3 +8,9 @@ export interface UrlOptions extends PluginOptions {
 export default class Url extends Plugin {
   constructor(uppy: Uppy, opts: Partial<UrlOptions>);
 }
+
+declare module '@uppy/core' {
+  export interface Uppy {
+    use(pluginClass: typeof Url, opts: Partial<UrlOptions>): Uppy;
+  }
+}

+ 6 - 0
packages/@uppy/webcam/types/index.d.ts

@@ -11,3 +11,9 @@ export interface WebcamOptions extends PluginOptions {
 export default class Webcam extends Plugin {
   constructor(uppy: Uppy, opts: Partial<WebcamOptions>);
 }
+
+declare module '@uppy/core' {
+  export interface Uppy {
+    use(pluginClass: typeof Webcam, opts: Partial<WebcamOptions>): Uppy;
+  }
+}

+ 6 - 0
packages/@uppy/xhr-upload/types/index.d.ts

@@ -16,3 +16,9 @@ export interface XHRUploadOptions extends PluginOptions {
 export default class XHRUpload extends Plugin {
   constructor(uppy: Uppy, opts: Partial<XHRUploadOptions>);
 }
+
+declare module '@uppy/core' {
+  export interface Uppy {
+    use(pluginClass: typeof XHRUpload, opts: Partial<XHRUploadOptions>): Uppy;
+  }
+}