{"_id":"@bun-win32/dwmapi","_rev":"8-6ab1763bb092a3b921e32feac10dd959","name":"@bun-win32/dwmapi","dist-tags":{"latest":"2.0.1"},"versions":{"1.0.0":{"name":"@bun-win32/dwmapi","version":"1.0.0","keywords":["bun","ffi","win32","windows","dwmapi","dwm","bindings","typescript","dll"],"author":{"name":"Stev Peifer","email":"stev@bell.net"},"license":"MIT","_id":"@bun-win32/dwmapi@1.0.0","maintainers":[{"name":"obscuritysrl","email":"stev@bell.net"}],"homepage":"https://github.com/ObscuritySRL/bun-win32#readme","bugs":{"url":"https://github.com/ObscuritySRL/bun-win32/issues"},"dist":{"shasum":"5b9d2518ae333791be3a3065763a0be7ac937e71","tarball":"https://registry.npmjs.org/@bun-win32/dwmapi/-/dwmapi-1.0.0.tgz","fileCount":5,"integrity":"sha512-zjLRjExYhKV8os7x9dJVcQXxRp74RVREZrkkrQ2tuH5/fVmy27BVdZisr5zV9Vcbp88887enOd9m4fvadgfyUQ==","signatures":[{"sig":"MEYCIQDG/GCb0mhefQgaDRTbE6k8z4pyfBJGS9Isq/O+zg6+NwIhANDZX8274ZVE5BbbUJVB2A+d/w/Jsgr1nnnnTQl21yOY","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":19204},"main":"./index.ts","type":"module","module":"index.ts","engines":{"bun":">=1.1.0"},"exports":{".":"./index.ts"},"gitHead":"837871872d5ca062bf6e7799a8261a5f185edba4","private":false,"scripts":{"example":"bun ./example/dwmapi.ts"},"_npmUser":{"name":"obscuritysrl","email":"stev@bell.net"},"repository":{"url":"git://github.com/ObscuritySRL/bun-win32.git","type":"git","directory":"packages/dwmapi"},"_npmVersion":"10.1.0","description":"Zero-dependency, zero-overhead Win32 DWMAPI bindings for Bun (FFI) on Windows.","directories":{},"sideEffects":false,"_nodeVersion":"20.8.0","dependencies":{"@bun-win32/core":"workspace:*"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"latest"},"peerDependencies":{"typescript":"^5"},"_npmOperationalInternal":{"tmp":"tmp/dwmapi_1.0.0_1775503320306_0.13994972947846396","host":"s3://npm-registry-packages-npm-production"}},"1.0.1":{"name":"@bun-win32/dwmapi","version":"1.0.1","keywords":["bun","ffi","win32","windows","dwmapi","dwm","bindings","typescript","dll"],"author":"Stev Peifer <stev@bell.net>","license":"MIT","_id":"@bun-win32/dwmapi@1.0.1","maintainers":[{"name":"obscuritysrl","email":"stev@bell.net"}],"homepage":"https://github.com/ObscuritySRL/bun-win32#readme","bugs":{"url":"https://github.com/ObscuritySRL/bun-win32/issues"},"dist":{"shasum":"14bf45e5d72fa7c8706adeeff3bd110a29b466b4","tarball":"https://registry.npmjs.org/@bun-win32/dwmapi/-/dwmapi-1.0.1.tgz","fileCount":6,"integrity":"sha512-aOKmZV2QDFd/XNo74WsqL9ez7RhGQJTn7uMCTVToCof60qZsg3eHFDxUGlzWaBazQNNCuGas48D1NwSlDzg7uA==","signatures":[{"sig":"MEQCIG3lkoSslqE+a3gsHIqhsCWcZcjmStBkJRBN+CyQXbGNAiBVx/fj7yxmu7n+b2y5nQfZHBgIyDkAfAuOZE7w86i0KQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":21423},"main":"./index.ts","type":"module","module":"index.ts","shasum":"14bf45e5d72fa7c8706adeeff3bd110a29b466b4","engines":{"bun":">=1.1.0"},"exports":{".":"./index.ts"},"private":false,"scripts":{"example":"bun ./example/dwmapi.ts"},"_npmUser":{"name":"obscuritysrl","email":"stev@bell.net"},"_integrity":"sha512-aOKmZV2QDFd/XNo74WsqL9ez7RhGQJTn7uMCTVToCof60qZsg3eHFDxUGlzWaBazQNNCuGas48D1NwSlDzg7uA==","repository":{"url":"git://github.com/ObscuritySRL/bun-win32.git","type":"git","directory":"packages/dwmapi"},"_npmVersion":"10.8.3","description":"Zero-dependency, zero-overhead Win32 DWMAPI bindings for Bun (FFI) on Windows.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","dependencies":{"@bun-win32/core":"1.1.1"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"latest"},"peerDependencies":{"typescript":"^5"},"_npmOperationalInternal":{"tmp":"tmp/dwmapi_1.0.1_1775514751641_0.8178177050469289","host":"s3://npm-registry-packages-npm-production"}},"1.0.2":{"name":"@bun-win32/dwmapi","version":"1.0.2","keywords":["bun","ffi","win32","windows","dwmapi","dwm","bindings","typescript","dll"],"author":{"name":"Stev Peifer","email":"stev@bell.net"},"license":"MIT","_id":"@bun-win32/dwmapi@1.0.2","maintainers":[{"name":"obscuritysrl","email":"stev@bell.net"}],"homepage":"https://github.com/ObscuritySRL/bun-win32#readme","bugs":{"url":"https://github.com/ObscuritySRL/bun-win32/issues"},"dist":{"shasum":"920850a37481e030cc71052e2d4510483209efbd","tarball":"https://registry.npmjs.org/@bun-win32/dwmapi/-/dwmapi-1.0.2.tgz","fileCount":6,"integrity":"sha512-F8BU0XBLEBdkjG/LyMtiSnYAd09f3wL+5PRLkTyKsrDFgJB2GY6MGDhc3INPTUTNw++fT+9xKWrzKn2u0s+mRQ==","signatures":[{"sig":"MEUCIQCibtH13LhLBqTnHjjcvNX4hRExtAxfxUAq4Z7Ckz7D5QIgGJwhMWT9yHouyXclTSCXZsKY5Nu5kUoFm+ZRHvWlRuQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":21769},"main":"./index.ts","type":"module","module":"index.ts","engines":{"bun":">=1.1.0"},"exports":{".":"./index.ts"},"gitHead":"f86f0df557aa6cfee8907bf3af5592855a854c15","private":false,"scripts":{"example":"bun ./example/dwmapi.ts"},"_npmUser":{"name":"obscuritysrl","email":"stev@bell.net"},"repository":{"url":"git://github.com/ObscuritySRL/bun-win32.git","type":"git","directory":"packages/dwmapi"},"_npmVersion":"10.1.0","description":"Zero-dependency, zero-overhead Win32 DWMAPI bindings for Bun (FFI) on Windows.","directories":{},"sideEffects":false,"_nodeVersion":"20.8.0","dependencies":{"@bun-win32/core":"workspace:*"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"latest"},"peerDependencies":{"typescript":"^5"},"_npmOperationalInternal":{"tmp":"tmp/dwmapi_1.0.2_1775584485050_0.010590257499420108","host":"s3://npm-registry-packages-npm-production"}},"1.0.3":{"name":"@bun-win32/dwmapi","version":"1.0.3","keywords":["bun","ffi","win32","windows","dwmapi","dwm","bindings","typescript","dll"],"author":"Stev Peifer <stev@bell.net>","license":"MIT","_id":"@bun-win32/dwmapi@1.0.3","maintainers":[{"name":"obscuritysrl","email":"stev@bell.net"}],"homepage":"https://github.com/ObscuritySRL/bun-win32#readme","bugs":{"url":"https://github.com/ObscuritySRL/bun-win32/issues"},"dist":{"shasum":"da209cf26106cb525b165b9fda9fb0070de3ba6b","tarball":"https://registry.npmjs.org/@bun-win32/dwmapi/-/dwmapi-1.0.3.tgz","fileCount":6,"integrity":"sha512-DlJ0oyHhTrtthNyADXuwloXaiq0K4EMQahuTFd/5ucu8fdR7UIRL1vUWyaTYeIHRyeOpZ2LLYUeIcULl9SyYqg==","signatures":[{"sig":"MEYCIQC5zpUNrzMI/0807UjYFlfg2RupYVYrb9qe31CDubNuGwIhAKdOYC9LSU4feMj+GBj+a8OJgEBwzk5L3iRmRp4RcO4y","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":21816},"main":"./index.ts","type":"module","module":"index.ts","shasum":"da209cf26106cb525b165b9fda9fb0070de3ba6b","engines":{"bun":">=1.1.0"},"exports":{".":"./index.ts"},"private":false,"scripts":{"example":"bun ./example/dwmapi.ts"},"_npmUser":{"name":"obscuritysrl","email":"stev@bell.net"},"_integrity":"sha512-DlJ0oyHhTrtthNyADXuwloXaiq0K4EMQahuTFd/5ucu8fdR7UIRL1vUWyaTYeIHRyeOpZ2LLYUeIcULl9SyYqg==","repository":{"url":"git://github.com/ObscuritySRL/bun-win32.git","type":"git","directory":"packages/dwmapi"},"_npmVersion":"10.8.3","description":"Zero-dependency, zero-overhead Win32 DWMAPI bindings for Bun (FFI) on Windows.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","dependencies":{"@bun-win32/core":"1.1.1"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"latest"},"peerDependencies":{"typescript":"^5"},"_npmOperationalInternal":{"tmp":"tmp/dwmapi_1.0.3_1775616178720_0.2404928046278485","host":"s3://npm-registry-packages-npm-production"}},"1.0.4":{"name":"@bun-win32/dwmapi","version":"1.0.4","keywords":["bun","ffi","win32","windows","dwmapi","dwm","bindings","typescript","dll"],"author":"Stev Peifer <stev@bell.net>","license":"MIT","_id":"@bun-win32/dwmapi@1.0.4","maintainers":[{"name":"obscuritysrl","email":"stev@bell.net"}],"homepage":"https://github.com/ObscuritySRL/bun-win32#readme","bugs":{"url":"https://github.com/ObscuritySRL/bun-win32/issues"},"dist":{"shasum":"47c4d2775a2219bb70f03d0d7fe5def79c34206d","tarball":"https://registry.npmjs.org/@bun-win32/dwmapi/-/dwmapi-1.0.4.tgz","fileCount":6,"integrity":"sha512-qFgdRzksWHgnWQQ6PG5odSH04b8H0Yk3upI3X4R61oTB+9R7QFG/fS3dUJIGrOz1BxW23+BMkiZXd3RQ/rLc2Q==","signatures":[{"sig":"MEYCIQCHpV9xMtjPfHW0K8LwhZNx5sGI9xPlUoYiFgIdjsh27gIhALr4HTB3rb2bZWho9Ed9HEhxkgyrPfhFnZq8U/jSdv+F","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":21984},"main":"./index.ts","type":"module","module":"index.ts","shasum":"47c4d2775a2219bb70f03d0d7fe5def79c34206d","engines":{"bun":">=1.1.0"},"exports":{".":"./index.ts"},"private":false,"scripts":{"example:theme-detective":"bun ./example/theme-detective.ts","example:compositor-report":"bun ./example/compositor-report.ts"},"_npmUser":{"name":"obscuritysrl","email":"stev@bell.net"},"_integrity":"sha512-qFgdRzksWHgnWQQ6PG5odSH04b8H0Yk3upI3X4R61oTB+9R7QFG/fS3dUJIGrOz1BxW23+BMkiZXd3RQ/rLc2Q==","repository":{"url":"git://github.com/ObscuritySRL/bun-win32.git","type":"git","directory":"packages/dwmapi"},"_npmVersion":"10.8.3","description":"Zero-dependency, zero-overhead Win32 DWMAPI bindings for Bun (FFI) on Windows.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","dependencies":{"@bun-win32/core":"1.1.1"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"latest","@bun-win32/user32":"3.0.19","@bun-win32/advapi32":"1.0.10"},"peerDependencies":{"typescript":"^5"},"_npmOperationalInternal":{"tmp":"tmp/dwmapi_1.0.4_1775687621918_0.2529037126869469","host":"s3://npm-registry-packages-npm-production"}},"1.0.5":{"name":"@bun-win32/dwmapi","version":"1.0.5","keywords":["bun","ffi","win32","windows","dwmapi","dwm","bindings","typescript","dll"],"author":"Stev Peifer <stev.p@outlook.com>","license":"MIT","_id":"@bun-win32/dwmapi@1.0.5","maintainers":[{"name":"obscuritysrl","email":"stev@bell.net"}],"homepage":"https://github.com/ObscuritySRL/bun-win32#readme","bugs":{"url":"https://github.com/ObscuritySRL/bun-win32/issues"},"dist":{"shasum":"0a6f8816832f534d3daa75800f6fe5b5c151bd72","tarball":"https://registry.npmjs.org/@bun-win32/dwmapi/-/dwmapi-1.0.5.tgz","fileCount":6,"integrity":"sha512-YgAIRBPDCtYKCct/VnKlH3+tYevhQdROAwfVYv0iXNdixT8SSinEU4Ks/+Z6K94oy5K4IPW5LEaoCvJ+r0dnAQ==","signatures":[{"sig":"MEUCIQDR2Ev5MjRYhGhh0VWS8ywQD6mlE/vVo+2uzmG+vCy+6AIgOpswvfcviYpE0EqlTvH93qS2J050iezv79uX2lDNWdU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":21989},"main":"./index.ts","type":"module","module":"index.ts","shasum":"0a6f8816832f534d3daa75800f6fe5b5c151bd72","engines":{"bun":">=1.1.0"},"exports":{".":"./index.ts"},"private":false,"scripts":{"example:theme-detective":"bun ./example/theme-detective.ts","example:compositor-report":"bun ./example/compositor-report.ts"},"_npmUser":{"name":"obscuritysrl","email":"stev@bell.net"},"_integrity":"sha512-YgAIRBPDCtYKCct/VnKlH3+tYevhQdROAwfVYv0iXNdixT8SSinEU4Ks/+Z6K94oy5K4IPW5LEaoCvJ+r0dnAQ==","repository":{"url":"git://github.com/ObscuritySRL/bun-win32.git","type":"git","directory":"packages/dwmapi"},"_npmVersion":"10.8.3","description":"Zero-dependency, zero-overhead Win32 DWMAPI bindings for Bun (FFI) on Windows.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","dependencies":{"@bun-win32/core":"1.1.4"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"latest","@bun-win32/user32":"3.0.22","@bun-win32/advapi32":"1.0.13"},"peerDependencies":{"typescript":"^5"},"_npmOperationalInternal":{"tmp":"tmp/dwmapi_1.0.5_1781130823734_0.8535382489369272","host":"s3://npm-registry-packages-npm-production"}},"2.0.0":{"name":"@bun-win32/dwmapi","version":"2.0.0","keywords":["bun","ffi","win32","windows","dwmapi","dwm","bindings","typescript","dll"],"author":"Stev Peifer <stev.p@outlook.com>","license":"MIT","_id":"@bun-win32/dwmapi@2.0.0","maintainers":[{"name":"obscuritysrl","email":"stev.p@outlook.com"}],"homepage":"https://github.com/ObscuritySRL/bun-win32#readme","bugs":{"url":"https://github.com/ObscuritySRL/bun-win32/issues"},"dist":{"shasum":"241318d72c04176dcc1ab665a8e6176b3fc29acd","tarball":"https://registry.npmjs.org/@bun-win32/dwmapi/-/dwmapi-2.0.0.tgz","fileCount":6,"integrity":"sha512-lZx7Pj4s93XlCrpl0F4dQ8GxwwDcpRKRsuy66N8xjYDL50U6arihhu4fD0qAfKU4oGAq8U1YNvEee9NmTgtgLA==","signatures":[{"sig":"MEYCIQCa6m3JFCzsGg48xuN9XWmnl294Ia2h1j6NCElqPquiRQIhAKcpbtxCtUhKOw71eKhpoUktg+W2Rfcjjhh+cugRYa/Z","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":23380},"main":"./index.ts","type":"module","module":"index.ts","shasum":"241318d72c04176dcc1ab665a8e6176b3fc29acd","engines":{"bun":">=1.1.0"},"exports":{".":"./index.ts"},"private":false,"scripts":{"example:theme-detective":"bun ./example/theme-detective.ts","example:compositor-report":"bun ./example/compositor-report.ts"},"_npmUser":{"name":"obscuritysrl","email":"stev.p@outlook.com"},"_integrity":"sha512-lZx7Pj4s93XlCrpl0F4dQ8GxwwDcpRKRsuy66N8xjYDL50U6arihhu4fD0qAfKU4oGAq8U1YNvEee9NmTgtgLA==","repository":{"url":"git://github.com/ObscuritySRL/bun-win32.git","type":"git","directory":"packages/dwmapi"},"_npmVersion":"10.8.3","description":"Zero-dependency, zero-overhead Win32 DWMAPI bindings for Bun (FFI) on Windows.","directories":{},"sideEffects":false,"_nodeVersion":"26.3.0","dependencies":{"@bun-win32/core":"2.0.0"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"latest","@bun-win32/user32":"4.0.0","@bun-win32/advapi32":"2.0.0"},"peerDependencies":{"typescript":"^5"},"_npmOperationalInternal":{"tmp":"tmp/dwmapi_2.0.0_1782435301572_0.3254647162775124","host":"s3://npm-registry-packages-npm-production"}},"2.0.1":{"author":"Stev Peifer <stev.p@outlook.com>","bugs":{"url":"https://github.com/ObscuritySRL/bun-win32/issues"},"dependencies":{"@bun-win32/core":"2.0.1"},"description":"Zero-dependency, zero-overhead Win32 DWMAPI bindings for Bun (FFI) on Windows.","devDependencies":{"@bun-win32/advapi32":"2.0.1","@bun-win32/user32":"4.0.1","@types/bun":"latest"},"exports":{".":"./index.ts"},"license":"MIT","module":"index.ts","name":"@bun-win32/dwmapi","peerDependencies":{"typescript":"^5"},"private":false,"homepage":"https://github.com/ObscuritySRL/bun-win32#readme","repository":{"type":"git","url":"git://github.com/ObscuritySRL/bun-win32.git","directory":"packages/dwmapi"},"type":"module","version":"2.0.1","main":"./index.ts","keywords":["bun","ffi","win32","windows","dwmapi","dwm","bindings","typescript","dll"],"sideEffects":false,"engines":{"bun":">=1.1.0"},"scripts":{"example:theme-detective":"bun ./example/theme-detective.ts","example:compositor-report":"bun ./example/compositor-report.ts"},"_id":"@bun-win32/dwmapi@2.0.1","_integrity":"sha512-ASgU+SJ0rdLpDPfH82V5dtml/2+bUZ9WZPwrIwHYCeJY3lVvzvBYbTFxcwNcFfil9wYezP7KwU3CDN1zb5Yldw==","_nodeVersion":"26.3.0","_npmVersion":"10.8.3","shasum":"f6669984a8ff60e16d6fe4ac27d62ebbd6cdd57a","dist":{"integrity":"sha512-ASgU+SJ0rdLpDPfH82V5dtml/2+bUZ9WZPwrIwHYCeJY3lVvzvBYbTFxcwNcFfil9wYezP7KwU3CDN1zb5Yldw==","shasum":"f6669984a8ff60e16d6fe4ac27d62ebbd6cdd57a","tarball":"https://registry.npmjs.org/@bun-win32/dwmapi/-/dwmapi-2.0.1.tgz","fileCount":6,"unpackedSize":23380,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIH62o3OJuANE74NU/cDMA7j8ezeLXa5BcDNB0M8g4G1VAiAKjFyASiIR5RR4txrW6GLLtNhEKCBiyTaCmTWJZhLDkg=="}]},"_npmUser":{"name":"obscuritysrl","email":"stev.p@outlook.com"},"directories":{},"maintainers":[{"name":"obscuritysrl","email":"stev.p@outlook.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/dwmapi_2.0.1_1782437762198_0.24233806960264315"},"_hasShrinkwrap":false}},"time":{"created":"2026-04-06T19:22:00.184Z","modified":"2026-06-26T01:36:02.477Z","1.0.0":"2026-04-06T19:22:00.439Z","1.0.1":"2026-04-06T22:32:31.785Z","1.0.2":"2026-04-07T17:54:45.194Z","1.0.3":"2026-04-08T02:42:58.941Z","1.0.4":"2026-04-08T22:33:42.071Z","1.0.5":"2026-06-10T22:33:43.929Z","2.0.0":"2026-06-26T00:55:01.693Z","2.0.1":"2026-06-26T01:36:02.350Z"},"bugs":{"url":"https://github.com/ObscuritySRL/bun-win32/issues"},"author":"Stev Peifer <stev.p@outlook.com>","license":"MIT","homepage":"https://github.com/ObscuritySRL/bun-win32#readme","keywords":["bun","ffi","win32","windows","dwmapi","dwm","bindings","typescript","dll"],"repository":{"type":"git","url":"git://github.com/ObscuritySRL/bun-win32.git","directory":"packages/dwmapi"},"description":"Zero-dependency, zero-overhead Win32 DWMAPI bindings for Bun (FFI) on Windows.","maintainers":[{"name":"obscuritysrl","email":"stev.p@outlook.com"}],"readme":"# @bun-win32/dwmapi\r\n\r\nZero-dependency, zero-overhead Win32 DWMAPI bindings for [Bun](https://bun.sh) on Windows.\r\n\r\n## Overview\r\n\r\n`@bun-win32/dwmapi` exposes the `dwmapi.dll` exports using [Bun](https://bun.sh)'s FFI. It provides a single class, `Dwmapi`, which lazily binds native symbols on first use. You can optionally preload a subset or all symbols up-front via `Preload()`.\r\n\r\nThe bindings are strongly typed for a smooth DX in TypeScript.\r\n\r\n## Features\r\n\r\n- [Bun](https://bun.sh)-first ergonomics on Windows 10/11.\r\n- Direct FFI to `dwmapi.dll` (27 bindings covering Desktop Window Manager composition, blur, thumbnails, and window attributes).\r\n- In-source docs in `structs/Dwmapi.ts` with links to Microsoft Docs.\r\n- Lazy binding on first call; optional eager preload (`Dwmapi.Preload()`).\r\n- No wrapper overhead; calls map 1:1 to native APIs.\r\n- Strongly-typed Win32 aliases (see `types/Dwmapi.ts`).\r\n\r\n## Requirements\r\n\r\n- [Bun](https://bun.sh) runtime\r\n- Windows 10 or later\r\n\r\n## Installation\r\n\r\n```sh\r\nbun add @bun-win32/dwmapi\r\n```\r\n\r\n## Quick Start\r\n\r\n```ts\r\nimport Dwmapi, { WindowAttribute } from '@bun-win32/dwmapi';\r\n\r\n// Optionally bind a subset up-front\r\nDwmapi.Preload(['DwmIsCompositionEnabled', 'DwmGetWindowAttribute', 'DwmSetWindowAttribute']);\r\n\r\n// Check if DWM composition is enabled\r\nconst enabledBuf = Buffer.alloc(4);\r\nDwmapi.DwmIsCompositionEnabled(enabledBuf.ptr);\r\nconsole.log('Composition enabled:', !!enabledBuf.readInt32LE(0));\r\n\r\n// Get the system colorization color\r\nconst colorBuf = Buffer.alloc(4);\r\nconst opaqueBuf = Buffer.alloc(4);\r\nDwmapi.DwmGetColorizationColor(colorBuf.ptr, opaqueBuf.ptr);\r\nconsole.log('Color:', '0x' + colorBuf.readUInt32LE(0).toString(16));\r\n\r\n// Enable immersive dark mode on a window (requires a valid HWND)\r\n// const darkMode = Buffer.alloc(4);\r\n// darkMode.writeInt32LE(1, 0);\r\n// Dwmapi.DwmSetWindowAttribute(hwnd, WindowAttribute.DWMWA_USE_IMMERSIVE_DARK_MODE, darkMode.ptr, 4);\r\n```\r\n\r\n> [!NOTE]\r\n> AI agents: see `AI.md` for the package binding contract and source-navigation guidance. It explains how to use the package without scanning the entire implementation.\r\n\r\n## Examples\r\n\r\nRun the included example:\r\n\r\n```sh\r\nbun run example\r\n```\r\n\r\n## Notes\r\n\r\n- Either rely on lazy binding or call `Dwmapi.Preload()`.\r\n- Windows only. Bun runtime required.\n- **SAL types & naming:** nullability is in the **type** — `Optional<T>` (formally optional, SAL `_*opt_`) and `Nullable<T>` (plain `[in]`/`[out]` the docs say can be NULL), the null sentinel derived from `T` (`null` for pointers `LP*`/`P*`, `0n` for handles/by-value addresses); direction is in the **parameter name** — `_out` (`_Out_`), `_in_out` (`_Inout_`), `_In_` bare. See `AI.md` and the repo `AGENTS.md`.\n","readmeFilename":"README.md"}