Skip to content

Commit

Permalink
Add libdef for mime 2.x.x (#2671)
Browse files Browse the repository at this point in the history
  • Loading branch information
jirutka authored and villesau committed Aug 27, 2018
1 parent 291b0f2 commit 578dff5
Show file tree
Hide file tree
Showing 2 changed files with 53 additions and 0 deletions.
24 changes: 24 additions & 0 deletions definitions/npm/mime_v2.x.x/flow_v0.25.x-/mime_v2.x.x.js
@@ -0,0 +1,24 @@
declare type $npm$mime$TypeMap = {[mime: string]: Array<string>};

declare class $npm$mime$Mime {
constructor(...typeMap: Array<$npm$mime$TypeMap>): void;

define(typeMap: $npm$mime$TypeMap, force?: boolean): void;
getExtension(mime: string): ?string;
getType(path: string): ?string;
}

declare module 'mime' {
declare type TypeMap = $npm$mime$TypeMap;
declare module.exports: $npm$mime$Mime;
}

declare module 'mime/lite' {
declare type TypeMap = $npm$mime$TypeMap;
declare module.exports: $npm$mime$Mime;
}

declare module 'mime/Mime' {
declare type TypeMap = $npm$mime$TypeMap;
declare module.exports: typeof $npm$mime$Mime;
}
29 changes: 29 additions & 0 deletions definitions/npm/mime_v2.x.x/test_mime.js
@@ -0,0 +1,29 @@
// @flow
import mime from 'mime';
import mimeLite from 'mime/lite'
import Mime from 'mime/Mime';

(mime.define({
'text/asciidoc': ['adoc', 'asciidoc'],
'text/markdown': ['md'],
}): void);
// $ExpectError
mime.define([['text/foo', 'txt']]);

(mime.getExtension('text/asciidoc'): ?string);
// $ExpectError
mime.getExtension(['text/foo']);

(mime.getType('README.adoc'): ?string);
// $ExpectError
mime.getType(66);

(new Mime(): Mime);
(new Mime({ 'text/asciidoc': ['adoc'], 'text/markdown': ['md'] }): Mime);
(new Mime({ 'text/asciidoc': ['adoc'] }, { 'text/markdown': ['md'] }): Mime);
// $ExpectError
new Mime(['text/foo']);

(new Mime().define({ 'text/asciidoc': ['adoc'] }): void);
(new Mime().getExtension('text/asciidoc'): ?string);
(new Mime().getType('README.adoc'): ?string);

0 comments on commit 578dff5

Please sign in to comment.