diff --git a/bin/localize-types b/bin/localize-types index 66f102e..f4e718f 100755 --- a/bin/localize-types +++ b/bin/localize-types @@ -1,14 +1,14 @@ #!/bin/sh my_typedefs="$( - grep typedef ./types.js | cut -d ' ' -f5 + grep typedef ./index.js | cut -d ' ' -f5 )" -rm -f ./local-types.js +rm -f ./types.js { echo '/**' for my_type in $my_typedefs; do - echo " * @typedef {import('./types.js').${my_type}} ${my_type}" + echo " * @typedef {import('./').${my_type}} ${my_type}" done echo ' */' -} >> ./local-types.js +} >> ./types.js diff --git a/index.js b/index.js new file mode 100644 index 0000000..b179e44 --- /dev/null +++ b/index.js @@ -0,0 +1,34 @@ +'use strict'; + +module.exports = require('./request.js'); + +/** + * @callback Request + * @param {RequestOptions} opts + * @returns {Response} + */ + +/** + * @typedef {Object} RequestOptions + * @prop {any} [opts.body] + * @prop {Object.} [opts.form] + * @prop {Headers} [opts.headers] + * @prop {String} [opts.method] + * @prop {Boolean | any} [opts.json] + * @prop {String} opts.url + */ + +/** + * @typedef {Object} Response + * @prop {any} body + * @prop {Headers} headers + * @prop {Boolean} ok + * @prop {any} [response] - TODO (browser only) + * @prop {any} [request] - TODO + * @prop {String} status + * @prop {Number} statusCode + */ + +/** + * @typedef {Object.>} Headers + */ diff --git a/types.js b/types.js index 4a75e07..586580a 100644 --- a/types.js +++ b/types.js @@ -1,34 +1,5 @@ -'use strict'; - -module.exports._typesOnly = true; - /** - * @callback Request - * @param {RequestOptions} opts - * @returns {Response} - */ - -/** - * @typedef {Object} RequestOptions - * @prop {any} [opts.body] - * @prop {Object.} [opts.form] - * @prop {Headers} [opts.headers] - * @prop {String} [opts.method] - * @prop {Boolean | any} [opts.json] - * @prop {String} opts.url - */ - -/** - * @typedef {Object} Response - * @prop {any} body - * @prop {Headers} headers - * @prop {Boolean} ok - * @prop {any} [response] - TODO (browser only) - * @prop {any} [request] - TODO - * @prop {String} status - * @prop {Number} statusCode - */ - -/** - * @typedef {Object.>} Headers + * @typedef {import('./').RequestOptions} RequestOptions + * @typedef {import('./').Response} Response + * @typedef {import('./').Headers} Headers */