{"_id":"typedef","_rev":"28-6cd1a0af121837cdb6a46d876f7988ec","name":"typedef","description":"Low-level type-centric utility functions for Javascript.","dist-tags":{"latest":"1.1.0"},"versions":{"0.10.2":{"name":"typedef","version":"0.10.2","description":"Familiar classes, mixins, and interfaces in ES5 Javascript. Member decorations for powerful objects that keep your code DRY","main":"lib/index.js","directories":{"test":"test"},"scripts":{"test":"grunt test"},"repository":{"type":"git","url":"git@bitbucket.org:bvalosek/compose.js.git"},"author":{"name":"Brandon Valosek"},"license":"MIT","devDependencies":{"grunt":"~0.4.1","grunt-contrib-uglify":"~0.2.2","grunt-contrib-jshint":"~0.6.0","grunt-contrib-watch":"~0.4.4","grunt-browserify":"~1.2.0","grunt-contrib-qunit":"~0.2.2"},"dependencies":{"underscore":"~1.5.1"},"_id":"typedef@0.10.2","dist":{"shasum":"8e4bd62fe28a02770a3b89f51ed119959dae8201","tarball":"https://registry.npmjs.org/typedef/-/typedef-0.10.2.tgz","integrity":"sha512-PWk9sP5rd0p8yvet00jKtG/dn9UgQoPApZbM3a57Tx0ibur0RHiL0vqRwolKH5x+Ie60BkuH3CkejFYtlyobQQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEj252E0MDgt/Uy2xDZfCYLAtzbfwCEqwNAEaOa+qPPoAiEAg7Ziz7RJaCOlACj4q+/Ht7WqQeWTmkL/jSvTYg6nGMg="}]},"_from":".","_npmVersion":"1.2.32","_npmUser":{"name":"bvalosek","email":"bvalosek@gmail.com"},"maintainers":[{"name":"bvalosek","email":"bvalosek@gmail.com"}]},"0.10.3":{"name":"typedef","version":"0.10.3","description":"Familiar classes, mixins, and interfaces in ES5 Javascript. Member decorations for powerful objects that keep your code DRY","main":"lib/index.js","directories":{"test":"test"},"scripts":{"test":"grunt test"},"repository":{"type":"git","url":"git@bitbucket.org:bvalosek/compose.js.git"},"author":{"name":"Brandon Valosek"},"license":"MIT","devDependencies":{"grunt":"~0.4.1","grunt-contrib-uglify":"~0.2.2","grunt-contrib-jshint":"~0.6.0","grunt-contrib-watch":"~0.4.4","grunt-browserify":"~1.2.0","grunt-contrib-qunit":"~0.2.2"},"dependencies":{"underscore":"~1.5.1"},"_id":"typedef@0.10.3","dist":{"shasum":"e0d0663fcc69e9e410ad78cff8c537b3a4062f03","tarball":"https://registry.npmjs.org/typedef/-/typedef-0.10.3.tgz","integrity":"sha512-EHV7Io3EU8VnDIQC4ZFuy/jrIEMSKr0bESM0cnF4Xh/r3Shak0EKGn7l5Qz92nDt8rk0vNq542Rg5ji4mwzHog==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIA30rEQ5UicEz35i/jlGScqodwz90tWCka1NVs2w6Ql8AiAbEtnVdTx2a0AUqQjQLxMWUXFDKWUG23veeXwq+LrIqg=="}]},"_from":".","_npmVersion":"1.2.32","_npmUser":{"name":"bvalosek","email":"bvalosek@gmail.com"},"maintainers":[{"name":"bvalosek","email":"bvalosek@gmail.com"}]},"0.10.4":{"name":"typedef","version":"0.10.4","description":"Familiar classes, mixins, and interfaces in ES5 Javascript. Member decorations for powerful objects that keep your code DRY","main":"lib/typedef.js","directories":{"test":"test"},"scripts":{"test":"grunt test"},"repository":{"type":"git","url":"git@bitbucket.org:bvalosek/compose.js.git"},"author":{"name":"Brandon Valosek"},"license":"MIT","devDependencies":{"grunt":"~0.4.1","grunt-contrib-uglify":"~0.2.2","grunt-contrib-jshint":"~0.6.0","grunt-contrib-watch":"~0.4.4","grunt-browserify":"~1.2.0","grunt-contrib-qunit":"~0.2.2"},"dependencies":{"underscore":"~1.5.1"},"_id":"typedef@0.10.4","dist":{"shasum":"675d742220bb2bec5cb33be27b4c3973bd02a35a","tarball":"https://registry.npmjs.org/typedef/-/typedef-0.10.4.tgz","integrity":"sha512-e7RSxqkYgQ4KUKu89kVGm6IXrM3jplbVAPcH3Ric7Z97ke/58L/2n9iDYaPTjRk8ek8grIhoJ6Tov8kmUQrxGQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCmICXQa8+Zs6R4sCRhAdGym5v1BGsH2QE0z2+MAd4PlQIgGJdnJHCp3dFM6kc/kOs+eMQ4CEMlFwq+J1wrr+nqeHE="}]},"_from":".","_npmVersion":"1.2.32","_npmUser":{"name":"bvalosek","email":"bvalosek@gmail.com"},"maintainers":[{"name":"bvalosek","email":"bvalosek@gmail.com"}]},"0.11.0":{"name":"typedef","version":"0.11.0","description":"Familiar classes, mixins, and interfaces in ES5 Javascript. Member decorations for powerful objects that keep your code DRY","main":"lib/typedef.js","directories":{"test":"test"},"scripts":{"test":"grunt test"},"repository":{"type":"git","url":"git@bitbucket.org:bvalosek/compose.js.git"},"author":{"name":"Brandon Valosek"},"license":"MIT","devDependencies":{"grunt":"~0.4.1","grunt-contrib-uglify":"~0.2.2","grunt-contrib-jshint":"~0.6.0","grunt-contrib-watch":"~0.4.4","grunt-browserify":"~1.2.0","grunt-contrib-qunit":"~0.2.2"},"dependencies":{"underscore":"~1.5.1"},"_id":"typedef@0.11.0","dist":{"shasum":"b1dd9fe9af49e0c8a9914d7cc7bbe5edfa8a4af6","tarball":"https://registry.npmjs.org/typedef/-/typedef-0.11.0.tgz","integrity":"sha512-d8dBpromGoRPcIlY3Dz4u4aJzI1V7+JjMcNidtjJmPfpCTtL673D2DSUhAtvNOMD8K7Z+5UGVl5WVr9H12f63A==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDDYEx43NzfWoKtAhksh09hpbqFJ9Su2FUjVuuX/dbsaQIhAPx/+WzwTGVcuLY0iveJGnMcQHkmN8OYK0EGLnhjdN1w"}]},"_from":".","_npmVersion":"1.2.32","_npmUser":{"name":"bvalosek","email":"bvalosek@gmail.com"},"maintainers":[{"name":"bvalosek","email":"bvalosek@gmail.com"}]},"0.12.0":{"name":"typedef","version":"0.12.0","description":"Familiar classes, mixins, and interfaces in ES5 Javascript. Member decorations for powerful objects that keep your code DRY","main":"lib/typedef.js","directories":{"test":"test"},"scripts":{"test":"grunt test"},"repository":{"type":"git","url":"git@bitbucket.org:bvalosek/compose.js.git"},"author":{"name":"Brandon Valosek"},"license":"MIT","devDependencies":{"grunt":"~0.4.1","grunt-contrib-uglify":"~0.2.2","grunt-contrib-jshint":"~0.6.0","grunt-contrib-watch":"~0.4.4","grunt-browserify":"~1.2.0","grunt-contrib-qunit":"~0.2.2"},"dependencies":{"underscore":"~1.5.1"},"_id":"typedef@0.12.0","dist":{"shasum":"5e28131933502c8a00a683e43cd454042a6833af","tarball":"https://registry.npmjs.org/typedef/-/typedef-0.12.0.tgz","integrity":"sha512-TSOieAma1FLaTrN7PbR13/dNSz2nYVwktAik+8/dDqd+tA6YNbTuzDSjXlaEQ1Se3d08SsCrwq8ZXOFkJCNsHA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCEet4ldiX9/QXOcQqQbAVxXuWpDK3QHSx6OrhAY8BbRAIhAMNfQwUHNvq7wskg2F8vbRAL02d6L5wsDtqt3195I14h"}]},"_from":".","_npmVersion":"1.2.32","_npmUser":{"name":"bvalosek","email":"bvalosek@gmail.com"},"maintainers":[{"name":"bvalosek","email":"bvalosek@gmail.com"}]},"0.13.0":{"name":"typedef","version":"0.13.0","description":"Familiar classes, mixins, and interfaces in ES5 Javascript. Member decorations for powerful objects that keep your code DRY","main":"lib/typedef.js","directories":{"test":"test"},"scripts":{"test":"grunt test"},"repository":{"type":"git","url":"git@bitbucket.org:bvalosek/compose.js.git"},"author":{"name":"Brandon Valosek"},"license":"MIT","devDependencies":{"grunt":"~0.4.1","grunt-contrib-uglify":"~0.2.2","grunt-contrib-jshint":"~0.6.0","grunt-contrib-watch":"~0.4.4","grunt-browserify":"~1.2.0","grunt-contrib-qunit":"~0.2.2"},"dependencies":{"underscore":"~1.5.1"},"_id":"typedef@0.13.0","dist":{"shasum":"03ac4888c6773e82bd1628d38e83aad7652fac10","tarball":"https://registry.npmjs.org/typedef/-/typedef-0.13.0.tgz","integrity":"sha512-bcpF/SQtVsCKBLU/kq8876H2vDEsICrPid7hpYwnTgK+niQwNSVi7pbbcNPj3GJspzBm+tmNQbf/v3KGdPKxsw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD1MNb1JAOFmaD4Obe7E8iiGEv+hrZstdIHBRc3+LivCQIgaj590H9hT3YzKOyY9BRhTiRehZ5Q/53FsH8kmhLJI0Y="}]},"_from":".","_npmVersion":"1.2.32","_npmUser":{"name":"bvalosek","email":"bvalosek@gmail.com"},"maintainers":[{"name":"bvalosek","email":"bvalosek@gmail.com"}]},"0.13.2":{"name":"typedef","version":"0.13.2","description":"Familiar classes, mixins, and interfaces in ES5 Javascript. Member decorations for powerful objects that keep your code DRY","main":"lib/typedef.js","directories":{"test":"test"},"scripts":{"test":"grunt test"},"repository":{"type":"git","url":"git@github.com:bvalosek/typedef.git"},"author":{"name":"Brandon Valosek"},"license":"MIT","devDependencies":{"grunt":"~0.4.1","grunt-contrib-uglify":"~0.2.2","grunt-contrib-jshint":"~0.6.0","grunt-contrib-watch":"~0.4.4","grunt-browserify":"~1.2.0","grunt-contrib-qunit":"~0.2.2"},"dependencies":{"underscore":"~1.5.1"},"bugs":{"url":"https://github.com/bvalosek/typedef/issues"},"_id":"typedef@0.13.2","dist":{"shasum":"5664ef5cc32a376b35b1d9e910423da0db6081ab","tarball":"https://registry.npmjs.org/typedef/-/typedef-0.13.2.tgz","integrity":"sha512-16fNu86a7RXjC2S1FriHI6opGbz5qdmOYqSupugMBnQTSvCV+nHidhdlPj3Fz3NXBFtL4/YimkiESRawA/STTg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIH3Mo+R+7Ki8GMSui9U/oQ39dQQzoat0nI9aAGxyjtVpAiBNQNovmQKJSOcVQjaZXNwfyjFuTeoSpWqOvMKTaPnrvg=="}]},"_from":".","_npmVersion":"1.2.32","_npmUser":{"name":"bvalosek","email":"bvalosek@gmail.com"},"maintainers":[{"name":"bvalosek","email":"bvalosek@gmail.com"}]},"0.17.0":{"name":"typedef","version":"0.17.0","description":"Utility functions for creating types in ES5 Javascript","directories":{"test":"test"},"scripts":{"test":"grunt test"},"repository":{"type":"git","url":"git@github.com:bvalosek/typedef.git"},"author":{"name":"Brandon Valosek"},"license":"MIT","bugs":{"url":"https://github.com/bvalosek/typedef/issues"},"homepage":"https://github.com/bvalosek/typedef","_id":"typedef@0.17.0","dist":{"shasum":"eddec637de02470f4a56da2a41555ac4bb27bc0a","tarball":"https://registry.npmjs.org/typedef/-/typedef-0.17.0.tgz","integrity":"sha512-fF5Z1Cul7pgfs+svjc0FMp6qa/9ROuyXtbn7Yt8Cef78jvFXWYQLcQGBVYOKMSOFWg3vukTlNXcMEgPAdtSRGA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDc/lpYM8uGeZzyjJ2W7/4rTrrtMPm43gn/ZVnp3mt8JgIgB0qSGuMpJBXkv/6gbnXEmX3uYjLSf6zVbgV7+ygyKL8="}]},"_from":".","_npmVersion":"1.3.23","_npmUser":{"name":"bvalosek","email":"bvalosek@gmail.com"},"maintainers":[{"name":"bvalosek","email":"bvalosek@gmail.com"}]},"0.18.0":{"name":"typedef","version":"0.18.0","description":"Utility functions for creating types in ES5 Javascript","directories":{"test":"test"},"scripts":{"test":"grunt test"},"repository":{"type":"git","url":"git@github.com:bvalosek/typedef.git"},"author":{"name":"Brandon Valosek"},"license":"MIT","bugs":{"url":"https://github.com/bvalosek/typedef/issues"},"homepage":"https://github.com/bvalosek/typedef","_id":"typedef@0.18.0","dist":{"shasum":"2a509b563a21a883394515062791dc8fa837cd14","tarball":"https://registry.npmjs.org/typedef/-/typedef-0.18.0.tgz","integrity":"sha512-8W83Jcowcexncvy2rsikBH4sCjT6yKYITE+zgYQvIUqH8jZDhxxxE1y8MNFJg8bS0BkRThqNvZoscH62W9UKcw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIG60TWF+J47D6OE2+oTOOb4Uj6cfjVKtg6/l3ZscozuyAiA4al89Gl7WY/J8diW202IGMjBeOgGItPP0ooEJgKLv1A=="}]},"_from":".","_npmVersion":"1.3.23","_npmUser":{"name":"bvalosek","email":"bvalosek@gmail.com"},"maintainers":[{"name":"bvalosek","email":"bvalosek@gmail.com"}]},"1.0.0":{"name":"typedef","version":"1.0.0","description":"Low-level type-centric utility functions for Javascript.","keywords":["inheritance","mixin","typedef","function","classes","mixins"],"author":{"name":"Brandon Valosek","email":"bvalosek@gmail.com","url":"http://brandon.is/awesome"},"directories":{"test":"test"},"scripts":{"test":"tape test/*.js"},"main":"index.js","license":"MIT","devDependencies":{"tape":"~2.3.2"},"repository":{"type":"git","url":"git@github.com:bvalosek/typedef.git"},"testling":{"files":"test/*.js","browsers":["ie/6..latest","chrome/28..canary","firefox/23..nightly","safari/5.1..latest","opera/latest","opera/next","iphone/latest","ipad/latest","android-browser/latest"]},"bugs":{"url":"https://github.com/bvalosek/typedef/issues"},"homepage":"https://github.com/bvalosek/typedef","_id":"typedef@1.0.0","dist":{"shasum":"fa1b73f29327593bbf034f4f4a3c436e991cd203","tarball":"https://registry.npmjs.org/typedef/-/typedef-1.0.0.tgz","integrity":"sha512-7jfspKv7jrvXUxMkqfZ0K2QqBqRHVAHpgYGaXF2jKfsk8DOXTeMztgQQBGUPH0w+/DHV23V9ik++KNQXbPB6RA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD2MJppyCC5YGrVZW4szptz73axPkWBP4quJa12Hka8QAIgXeq1lXkw1CBnPqm+sZO+lcNzeHNxYG7dIa1K7M9zeno="}]},"_from":".","_npmVersion":"1.3.23","_npmUser":{"name":"bvalosek","email":"bvalosek@gmail.com"},"maintainers":[{"name":"bvalosek","email":"bvalosek@gmail.com"}]},"1.0.1":{"name":"typedef","version":"1.0.1","description":"Low-level type-centric utility functions for Javascript.","keywords":["inheritance","mixin","typedef","function","classes","mixins"],"author":{"name":"Brandon Valosek","email":"bvalosek@gmail.com","url":"http://brandon.is/awesome"},"directories":{"test":"test"},"scripts":{"test":"tape test/*.js"},"main":"index.js","license":"MIT","devDependencies":{"tape":"~2.3.2"},"repository":{"type":"git","url":"git@github.com:bvalosek/typedef.git"},"testling":{"files":"test/*.js","browsers":["ie/6..latest","chrome/28..canary","firefox/23..nightly","safari/5.1..latest","opera/latest","opera/next","iphone/latest","ipad/latest","android-browser/latest"]},"bugs":{"url":"https://github.com/bvalosek/typedef/issues"},"homepage":"https://github.com/bvalosek/typedef","_id":"typedef@1.0.1","dist":{"shasum":"2959089e9431ab6438c197698c68592abe83bae0","tarball":"https://registry.npmjs.org/typedef/-/typedef-1.0.1.tgz","integrity":"sha512-iG6imN3SFvjhOy1YULOHQ2XAzy0Wdejo78tKevtI4h6g5Jf9obq6VIAiRrHsR99sR9p0mr3+sgnTJtBfxw3HJQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIA6WUZIYwXWjnd7mgsM50S7nwmS43bjOSfw+m15htx8XAiEAr0OwnC9eLlZPP8/6TRXVdjXNXVD/e8FIDvpmZM7bexU="}]},"_from":".","_npmVersion":"1.3.23","_npmUser":{"name":"bvalosek","email":"bvalosek@gmail.com"},"maintainers":[{"name":"bvalosek","email":"bvalosek@gmail.com"}]},"1.0.2":{"name":"typedef","version":"1.0.2","description":"Low-level type-centric utility functions for Javascript.","keywords":["inheritance","mixin","typedef","function","classes","mixins"],"author":{"name":"Brandon Valosek","email":"bvalosek@gmail.com","url":"http://brandon.is/awesome"},"directories":{"test":"test"},"scripts":{"test":"tape test/*.js"},"main":"index.js","license":"MIT","devDependencies":{"tape":"~2.3.2"},"repository":{"type":"git","url":"git@github.com:bvalosek/typedef.git"},"testling":{"files":"test/*.js","browsers":["ie/6..latest","chrome/28..canary","firefox/23..nightly","safari/5.1..latest","opera/latest","opera/next","iphone/latest","ipad/latest","android-browser/latest"]},"bugs":{"url":"https://github.com/bvalosek/typedef/issues"},"homepage":"https://github.com/bvalosek/typedef","_id":"typedef@1.0.2","dist":{"shasum":"28ef877886bd6dc9a05e984becd1657a0475f0b7","tarball":"https://registry.npmjs.org/typedef/-/typedef-1.0.2.tgz","integrity":"sha512-5bIFPfxtcLgZ9wssfeppoqa3WF8xleEe9lWgJvXJXGxUs6xaM6Solzz/P4XiJbuObff6nQioWqKyRmHCKAfGHA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHNMuJBc0RCjE7bZYSE4PDJT9cYMrLq9c5/f7IvJhONrAiEAyMLqcxDFwTmfL8EckfBjJwvKJ8tWAbw+ScwGTeKw2pg="}]},"_from":".","_npmVersion":"1.3.23","_npmUser":{"name":"bvalosek","email":"bvalosek@gmail.com"},"maintainers":[{"name":"bvalosek","email":"bvalosek@gmail.com"}]},"1.0.3":{"name":"typedef","version":"1.0.3","description":"Low-level type-centric utility functions for Javascript.","keywords":["inheritance","mixin","typedef","function","classes","mixins"],"author":{"name":"Brandon Valosek","email":"bvalosek@gmail.com","url":"http://brandon.is/awesome"},"directories":{"test":"test"},"scripts":{"test":"tape test/*.js"},"main":"index.js","license":"MIT","devDependencies":{"tape":"~2.3.2"},"repository":{"type":"git","url":"git@github.com:bvalosek/typedef.git"},"testling":{"files":"test/*.js","browsers":["ie/6..latest","chrome/28..canary","firefox/23..nightly","safari/5.1..latest","opera/latest","opera/next","iphone/latest","ipad/latest","android-browser/latest"]},"bugs":{"url":"https://github.com/bvalosek/typedef/issues"},"homepage":"https://github.com/bvalosek/typedef","_id":"typedef@1.0.3","dist":{"shasum":"1929ed91d25ad10f2ce4b8e2ba2c5e9f3ff87976","tarball":"https://registry.npmjs.org/typedef/-/typedef-1.0.3.tgz","integrity":"sha512-JoV2IV+NTkY/hSMNE2BtVHQZJVgPrUzRuTYhDG2NXlVEVsx2+n2LJS/x0pF+Hcz6ieVMZjJOdrFx+ghT8Ltx2w==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGysZ/iky9n68MO3kjKW/FUu2jph5AJCw2nK5gOZf+4iAiAKjXiMX69ITc55kRZIzUtaPaRVXE6Vp7pTcyQQe4dYjw=="}]},"_from":".","_npmVersion":"1.4.6","_npmUser":{"name":"bvalosek","email":"bvalosek@gmail.com"},"maintainers":[{"name":"bvalosek","email":"bvalosek@gmail.com"}]},"1.0.4":{"name":"typedef","version":"1.0.4","description":"Low-level type-centric utility functions for Javascript.","keywords":["inheritance","mixin","typedef","function","classes","mixins"],"author":{"name":"Brandon Valosek","email":"bvalosek@gmail.com","url":"http://brandon.is/awesome"},"directories":{"test":"test"},"scripts":{"test":"tape test/*.js"},"main":"index.js","license":"MIT","devDependencies":{"tape":"~2.13.1"},"repository":{"type":"git","url":"git@github.com:bvalosek/typedef.git"},"testling":{"files":"test/*.js","browsers":["ie/6..latest","chrome/28..canary","firefox/23..nightly","safari/5.1..latest","opera/latest","opera/next","iphone/latest","ipad/latest","android-browser/latest"]},"bugs":{"url":"https://github.com/bvalosek/typedef/issues"},"homepage":"https://github.com/bvalosek/typedef","_id":"typedef@1.0.4","_shasum":"f83388816916064d946008d9aeb297caaabf383b","_from":".","_npmVersion":"1.4.10","_npmUser":{"name":"bvalosek","email":"bvalosek@gmail.com"},"maintainers":[{"name":"bvalosek","email":"bvalosek@gmail.com"}],"dist":{"shasum":"f83388816916064d946008d9aeb297caaabf383b","tarball":"https://registry.npmjs.org/typedef/-/typedef-1.0.4.tgz","integrity":"sha512-tu/YCc4L0n6Yxh3fxzGIki9Pw2oBTMb1YKshFvVPN2nHX62PQmvPGxh783mly1GhvB/fM5WNd7PH7PXhTr8BEA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCjoTjqSO4hQczGpSW0mU01u2Qa9P/HY+EAjK7glMACGwIgWgEW+lcfEC5seQe8WrLZ1Jg3n4ZK6eE9d39zO2DQVwE="}]}},"1.1.0":{"name":"typedef","version":"1.1.0","description":"Low-level type-centric utility functions for Javascript.","keywords":["inheritance","mixin","typedef","function","classes","mixins"],"author":{"name":"Brandon Valosek","email":"bvalosek@gmail.com","url":"http://brandon.is/awesome"},"directories":{"test":"test"},"scripts":{"test":"tape test/*.js"},"main":"index.js","license":"MIT","devDependencies":{"tape":"~2.13.1"},"repository":{"type":"git","url":"git@github.com:bvalosek/typedef.git"},"testling":{"files":"test/*.js","browsers":["ie/6..latest","chrome/28..canary","firefox/23..nightly","safari/5.1..latest","opera/latest","opera/next","iphone/latest","ipad/latest","android-browser/latest"]},"gitHead":"0e1eb3664e27e461b8560944954dd6c2e00b2729","bugs":{"url":"https://github.com/bvalosek/typedef/issues"},"homepage":"https://github.com/bvalosek/typedef","_id":"typedef@1.1.0","_shasum":"468d3c24f463a85811b3a76a4911b370a8b5d143","_from":".","_npmVersion":"1.5.0-alpha-1","_npmUser":{"name":"bvalosek","email":"bvalosek@gmail.com"},"maintainers":[{"name":"bvalosek","email":"bvalosek@gmail.com"}],"dist":{"shasum":"468d3c24f463a85811b3a76a4911b370a8b5d143","tarball":"https://registry.npmjs.org/typedef/-/typedef-1.1.0.tgz","integrity":"sha512-cFZhNTZzXPRjX29fAbRgj52oPSLEG2v8UOWTGjFox+/VcPlGB1VJtTf/TQq6zxYibdhQZtiqCckV28AOUeIrgw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIE8MoQRPEavrKFbDSQehVsd7rogLWfEsYf9EYlQRYzmpAiEAykYcAsy9mN69by7tkQstf172QKbFsgupv+d93pChiys="}]}}},"readme":"# Typedef\n\n[![Build Status](https://travis-ci.org/bvalosek/typedef.png?branch=master)](https://travis-ci.org/bvalosek/typedef)\n[![NPM version](https://badge.fury.io/js/typedef.png)](http://badge.fury.io/js/typedef)\n\nLow-level type-centric utility functions for Javascript.\n\n[![browser support](https://ci.testling.com/bvalosek/typedef.png)](https://ci.testling.com/bvalosek/typedef)\n\n## Installation\n\n**Typedef** can be used on the server with NodeJS or on the client, built with\n[Browserify](http://browserify.org/), so install with npm:\n\n```\nnpm install typedef\n```\n\n## Usage\n\n### extends(`Child`, `Base`)\n\nWhile traditionally, favoring composition over inheritance in Javascript is\ntypically the way to go, classic inheritance can be useful if used sparingly.\n\nThis is the `extends` function that is used in Typescript, Coffeescript, ES6\ncompilers, etc. It uses prototypes to setup something similar to to classical\nsingle inheritance.\n\n```javascript\nvar extends_ = require('typedef').extends;\n\nfunction Base()\n{\n  console.log('base ctor');\n}\n\nBase.prototype.method = function()\n{\n  console.log('hello from base class');\n}\n\n...\n\nextends_(Child, Base);\n\nfunction Child()\n{\n  // Call base constructor\n  Child.Super.apply(this, arguments);\n\n  console.log('child ctor');\n}\n\nChild.prototype.method2 = function()\n{\n  console.log('hello from child class');\n}\n\n...\n\nvar foo = new Child();\n// base ctor\n// child ctor\n\nfoo.method();\n// hello from base class\n\nfoo.method2();\n// hello from child class\n\nfoo instanceof Child;\n// true\n\nfoo instanceof Base;\n// true\n```\n\n### mixin(`Constructor`, `Mixin`)\n\nClass composition method. Mixin methods into `Constructor.prototype`.\n\nIf `Mixin` is a constructor function (class), then mixin all static properties\ninto `Constructor`, and everything on `Mixin.prototype` to\n`Constructor.prototype`. If `Mixin` is just a Plain Old Object, then simply add\nthe members of `Mixin` to `Contructor.prototype`.\n\n### getArguments(`f`) and getName(`f`)\n\nGet the name of all the parameters or name for function `f`.\n\n```javascript\nvar getArguments = require('typedef').getArguments;\nvar getName      = require('typedef').getName;\n\nfunction foo(a, b, c)\n{\n  ...\n}\n\ngetArguments(foo);\n// ['a', 'b', 'c']\n\ngetName(foo);\n// 'foo'\n```\n\n## Tern Support\n\nThe library files are all decorated with [JSDoc3](http://usejsdoc.org/)-style\nannotations that work great with the [Tern](http://ternjs.net/) code inference\nsystem. Combined with the Node plugin (see this project's `.tern-project`\nfile), you can have intelligent autocomplete for methods in this library.\n\n## Testing\n\nTesting is done with [Tape](http://github.com/substack/tape) and can be run\nwith the command `npm test`.\n\nAutomated CI cross-browser testing is provided by\n[Testling](http://ci.testling.com/bvalosek/typedef).\n\n\n## License\nCopyright 2014 Brandon Valosek\n\n**Typedef** is released under the MIT license.\n\n","maintainers":[{"name":"bvalosek","email":"bvalosek@gmail.com"}],"time":{"modified":"2022-06-28T00:56:16.290Z","created":"2013-07-09T21:01:45.115Z","0.10.2":"2013-07-09T21:01:47.641Z","0.10.3":"2013-07-09T21:03:55.244Z","0.10.4":"2013-07-10T13:27:05.811Z","0.11.0":"2013-07-10T19:07:21.138Z","0.12.0":"2013-07-15T16:35:18.112Z","0.13.0":"2013-07-24T21:41:43.148Z","0.13.2":"2013-07-26T20:26:16.546Z","0.17.0":"2014-01-13T16:28:16.695Z","0.18.0":"2014-01-13T17:36:03.103Z","1.0.0":"2014-01-18T03:44:28.175Z","1.0.1":"2014-01-18T06:35:27.985Z","1.0.2":"2014-01-18T07:10:48.812Z","1.0.3":"2014-04-14T05:20:50.275Z","1.0.4":"2014-05-17T17:47:48.705Z","1.1.0":"2014-08-28T17:32:28.981Z"},"author":{"name":"Brandon Valosek","email":"bvalosek@gmail.com","url":"http://brandon.is/awesome"},"repository":{"type":"git","url":"git@github.com:bvalosek/typedef.git"},"homepage":"https://github.com/bvalosek/typedef","keywords":["inheritance","mixin","typedef","function","classes","mixins"],"bugs":{"url":"https://github.com/bvalosek/typedef/issues"},"license":"MIT","readmeFilename":"README.md"}