{"_id":"@diyashah/await-timer-intervals","_rev":"2-4e0cc9b4f88cd7a0e7ec8e7327c8aff9","name":"@diyashah/await-timer-intervals","dist-tags":{"latest":"1.1.0"},"versions":{"1.0.0":{"name":"@diyashah/await-timer-intervals","version":"1.0.0","keywords":["timer","delay","interval","utils","promise","async"],"author":{"name":"diya shah"},"license":"ISC","_id":"@diyashah/await-timer-intervals@1.0.0","maintainers":[{"name":"diyashah","email":"shahdiya1162004@gmail.com"}],"dist":{"shasum":"df85d62245bbdd4e9275b53183811f768f86f356","tarball":"https://registry.npmjs.org/@diyashah/await-timer-intervals/-/await-timer-intervals-1.0.0.tgz","fileCount":13,"integrity":"sha512-VQhQS202OyjzcMJ6xB+FBAgjtxKWRd9C6JwTTDwiBdG1uVqhBsB9Ed70j52bNt6SlbAgMKnh2+UPig0NiWdzvw==","signatures":[{"sig":"MEQCIHg1xw89lKoGNh9eW1RbY3VhIvlOzbq084YnTx3VUDWKAiB5dzINnrj6E41MrbGtKrtQ8/nLH8T59jVj5I3JNuGk+w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":3053},"main":"index.js","type":"commonjs","scripts":{"build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"diyashah","actor":{"name":"diyashah","type":"user","email":"shahdiya1162004@gmail.com"},"email":"shahdiya1162004@gmail.com"},"_npmVersion":"11.3.0","description":"","directories":{},"_nodeVersion":"24.0.2","dependencies":{"vitest":"^3.2.4","typescript":"^5.8.3"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/await-timer-intervals_1.0.0_1752080906582_0.3748065718492297","host":"s3://npm-registry-packages-npm-production"}},"1.1.0":{"name":"@diyashah/await-timer-intervals","version":"1.1.0","description":"Lightweight and promise-based **timer utilities** built with `setTimeout` and `setInterval`.  \r Useful for async/await delays and repeatable intervals in modern JavaScript/TypeScript projects.","license":"ISC","author":{"name":"diya shah"},"type":"commonjs","main":"index.js","scripts":{"build":"tsc","prepublishOnly":"npm run build"},"keywords":["timer","delay","interval","utils","promise","async"],"dependencies":{"typescript":"^5.8.3","vitest":"^3.2.4"},"_id":"@diyashah/await-timer-intervals@1.1.0","_nodeVersion":"24.0.2","_npmVersion":"11.3.0","dist":{"integrity":"sha512-f0UhCweeU35x/smUgHKeV+a+wGqtLzAHtIQuiURsJpvSMamaNwHVYGnm4lZ/ChxOz6PjbhpzVlX9bN7cUu5htA==","shasum":"cea2a1ee9b6c239012756a0ad6fe1eeae55b1436","tarball":"https://registry.npmjs.org/@diyashah/await-timer-intervals/-/await-timer-intervals-1.1.0.tgz","fileCount":8,"unpackedSize":2757,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIAh0QCnMU3SQCaXgepTKIwb1ivIoNLfXyS1F/Tk6lGB6AiAYo8PI7tX2XSqKL3zyl285h1XAxTYmKF8cNB+4prdKGg=="}]},"_npmUser":{"name":"diyashah","email":"shahdiya1162004@gmail.com","actor":{"name":"diyashah","email":"shahdiya1162004@gmail.com","type":"user"}},"directories":{},"maintainers":[{"name":"diyashah","email":"shahdiya1162004@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/await-timer-intervals_1.1.0_1752082189444_0.5923143862687639"},"_hasShrinkwrap":false}},"time":{"created":"2025-07-09T17:08:26.529Z","modified":"2025-07-09T17:29:49.791Z","1.0.0":"2025-07-09T17:08:26.776Z","1.1.0":"2025-07-09T17:29:49.612Z"},"author":{"name":"diya shah"},"license":"ISC","keywords":["timer","delay","interval","utils","promise","async"],"maintainers":[{"name":"diyashah","email":"shahdiya1162004@gmail.com"}],"readme":"# 📦 await-timer-intervals\r\n\r\nLightweight and promise-based **timer utilities** built with `setTimeout` and `setInterval`.  \r\nUseful for async/await delays and repeatable intervals in modern JavaScript/TypeScript projects.\r\n\r\n---\r\n\r\n## ✨ Features\r\n\r\n-  `delay(ms)` — Pause execution for a set time\r\n- `delayWithId(ms)` — Delay + get timeout ID\r\n- `repeat(interval, totalDuration, callback)` — Repeat callback for a specific duration\r\n\r\n---\r\n\r\n## 🧰 Installation\r\n\r\n```bash\r\nnpm install @diyashah/await-timer-intervals\r\n```\r\n## 🚀 Usage\r\n\r\n### `1) repeat(interval, totalDuration, callback)`\r\n\r\nRuns `callback()` every `interval` milliseconds for `totalDuration` milliseconds.\r\n\r\n```ts\r\nimport { repeat } from '@diyashah/await-timer-intervals';\r\n\r\nawait repeat(1000, 5000, () => {\r\n  console.log('Tick every 1s');\r\n});\r\nconsole.log('Done!');\r\n```\r\n###  `2)delay(ms)`\r\n\r\nPause execution for a specified number of milliseconds.\r\n\r\n```ts\r\nimport { delay } from '@diyashah/await-timer-intervals';\r\n\r\nconsole.log('Waiting...');\r\nawait delay(2000);\r\nconsole.log('2 seconds passed');\r\n```\r\n###  `3)delayWithId(ms)`\r\n\r\nWait `ms` milliseconds, then return the timeout ID (after it fires).\r\n\r\n```ts\r\nimport { delayWithId } from '@diyashah/await-timer-intervals';\r\n\r\nconst id = await delayWithId(1000);\r\nconsole.log('Waited 1s, timeout ID was:', id);","readmeFilename":"README.md","description":"Lightweight and promise-based **timer utilities** built with `setTimeout` and `setInterval`.  \r Useful for async/await delays and repeatable intervals in modern JavaScript/TypeScript projects."}