{"_id":"@aokiapp/reark-lark-api","_rev":"11-88008fa0be95804201a1016e5fc0ab12","name":"@aokiapp/reark-lark-api","dist-tags":{"latest":"0.5.1"},"versions":{"0.3.1":{"name":"@aokiapp/reark-lark-api","version":"0.3.1","_id":"@aokiapp/reark-lark-api@0.3.1","maintainers":[{"name":"yuki-js","email":"ayukiyhs@gmail.com"}],"dist":{"shasum":"134d7b092760588b45bd782d48e72be72cab48f1","tarball":"https://registry.npmjs.org/@aokiapp/reark-lark-api/-/reark-lark-api-0.3.1.tgz","fileCount":32,"integrity":"sha512-3SVJZhPqju64ZIN+5kmD2/kB9qshQfHfFPdPPv5BQbQzNuk40R8oauCOUbw+EmqTDCL/ZBN0oX+tHIXXJL5y2g==","signatures":[{"sig":"MEUCICCdQALbK0ShcokSKq3QpW0vB8PLfOjZQfN4NMSgk8y6AiEAv28be/50jbbujVsSThFLKtIpHSzWnkPTbY1D7jUMVdI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":67943},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"bcf302ece8cfb06295f1f6c42d5297f62e8b6b5f","private":false,"scripts":{"dev":"npm run build:watch","lint":"eslint src --ext .ts,.tsx","test":"jest --passWithNoTests","build":"tsc --outDir dist","publish":"npm publish --access public","typecheck":"tsc --noEmit","build:watch":"tsc --outDir dist --watch","postpublish":"echo Published!","prepublishOnly":"npm run build"},"_npmUser":{"name":"yuki-js","email":"ayukiyhs@gmail.com"},"_npmVersion":"10.9.2","directories":{},"sideEffects":false,"_nodeVersion":"22.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/reark-lark-api_0.3.1_1746549876883_0.41159985762315787","host":"s3://npm-registry-packages-npm-production"}},"0.3.2":{"name":"@aokiapp/reark-lark-api","version":"0.3.2","_id":"@aokiapp/reark-lark-api@0.3.2","maintainers":[{"name":"yuki-js","email":"ayukiyhs@gmail.com"}],"dist":{"shasum":"b6f79fe83916b3d99d7356371693879049628350","tarball":"https://registry.npmjs.org/@aokiapp/reark-lark-api/-/reark-lark-api-0.3.2.tgz","fileCount":32,"integrity":"sha512-DZvlBEOBTR/Y+coI1qTaTy8MBuwt+0X3HBw2z+GOhjRYi17hZGJOAl9HdvfIo+ekbcP6LMgQaZY4MitknjB3/Q==","signatures":[{"sig":"MEUCIGciwQzaorys3q7MigdbugPT0IBHdvTi32fXR1q+zS/cAiEA6QXNGq+GuzqATB4xHhA6vQLadfcrkegfxWpRDbXmAnY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":67981},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"bcf302ece8cfb06295f1f6c42d5297f62e8b6b5f","private":false,"scripts":{"dev":"npm run build:watch","lint":"eslint src --ext .ts,.tsx","test":"jest --passWithNoTests","build":"tsc --outDir dist","publish":"npm publish --access public","typecheck":"tsc --noEmit","build:watch":"tsc --outDir dist --watch","postpublish":"echo Published!","prepublishOnly":"npm run build"},"_npmUser":{"name":"yuki-js","email":"ayukiyhs@gmail.com"},"_npmVersion":"10.9.2","directories":{},"sideEffects":false,"_nodeVersion":"22.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/reark-lark-api_0.3.2_1746550040318_0.7918275321045471","host":"s3://npm-registry-packages-npm-production"}},"0.3.3":{"name":"@aokiapp/reark-lark-api","version":"0.3.3","_id":"@aokiapp/reark-lark-api@0.3.3","maintainers":[{"name":"yuki-js","email":"ayukiyhs@gmail.com"}],"dist":{"shasum":"367c11b475fd0f353eab39db2a80c38f371f1e29","tarball":"https://registry.npmjs.org/@aokiapp/reark-lark-api/-/reark-lark-api-0.3.3.tgz","fileCount":32,"integrity":"sha512-h4VVFKDPT6e2pYDHii94H8QAj1l6FMqSk96gR/O/VP7zB2SzsDAwBv35y0zS6ThkOMZSPHSMj/kisOctpB3+2A==","signatures":[{"sig":"MEUCIQD4mSeO2Gjvrqc9zBZNLd0VrLQR6XucIptl8oP1lhFSywIgQ18WTbkKQj/BaAXK0p734luOnioAlepHRC5+5qaITUY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":68020},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"bcf302ece8cfb06295f1f6c42d5297f62e8b6b5f","private":false,"scripts":{"dev":"npm run build:watch","lint":"eslint src --ext .ts,.tsx","test":"jest --passWithNoTests","build":"tsc --outDir dist","publish":"npm publish --access public","typecheck":"tsc --noEmit","build:watch":"tsc --outDir dist --watch","postpublish":"echo Published!","prepublishOnly":"npm run build"},"_npmUser":{"name":"yuki-js","email":"ayukiyhs@gmail.com"},"_npmVersion":"10.9.2","directories":{},"sideEffects":false,"_nodeVersion":"22.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/reark-lark-api_0.3.3_1746550180062_0.510400431241836","host":"s3://npm-registry-packages-npm-production"}},"0.3.4":{"name":"@aokiapp/reark-lark-api","version":"0.3.4","_id":"@aokiapp/reark-lark-api@0.3.4","maintainers":[{"name":"yuki-js","email":"ayukiyhs@gmail.com"}],"dist":{"shasum":"f4565e4201abc3e8462a2c4d7a9947d8fc641996","tarball":"https://registry.npmjs.org/@aokiapp/reark-lark-api/-/reark-lark-api-0.3.4.tgz","fileCount":32,"integrity":"sha512-8oPzS5ir5UUvPIH7LswjNdEmyxT+bEBlf+Nzg7M/17TBPJIa4x5kSZfxbSgCRrGK13IegrasLk5jIikWxm58VA==","signatures":[{"sig":"MEUCIQDG7T4OST9rkmxXswSnQtEssekhhPl/bLlA+eVGYsAp5AIgePMG0VP0Xjk0wWkTyiau1p3hj/UrwpsBcaagCPVMGwA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":67982},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"bcf302ece8cfb06295f1f6c42d5297f62e8b6b5f","private":false,"scripts":{"dev":"npm run build:watch","lint":"eslint src --ext .ts,.tsx","test":"jest --passWithNoTests","build":"tsc --outDir dist","typecheck":"tsc --noEmit","build:watch":"tsc --outDir dist --watch","prepublishOnly":"npm run build"},"_npmUser":{"name":"yuki-js","email":"ayukiyhs@gmail.com"},"_npmVersion":"10.9.2","directories":{},"sideEffects":false,"_nodeVersion":"22.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/reark-lark-api_0.3.4_1746550309893_0.5746078531780425","host":"s3://npm-registry-packages-npm-production"}},"0.4.0":{"name":"@aokiapp/reark-lark-api","version":"0.4.0","_id":"@aokiapp/reark-lark-api@0.4.0","maintainers":[{"name":"yuki-js","email":"ayukiyhs@gmail.com"}],"dist":{"shasum":"58c8a08444ec976349d13e93281651c0088ff1b0","tarball":"https://registry.npmjs.org/@aokiapp/reark-lark-api/-/reark-lark-api-0.4.0.tgz","fileCount":26,"integrity":"sha512-qDGL4BLHak9F4twQNUiP+b76gZDykpwumevBNdOYuDmhNtAc2Z1MMyq4Pv4EEnncQsghlZQINiFcMnV68YAO1w==","signatures":[{"sig":"MEUCIG9ep0O0brch9dQ9oHH2531qw2QW5+3dmtCDovOhoXswAiEAgCp+ysT1IPu7UY2bHEsSRhU6NIoOQwcJRFmNqiZ00Ns=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":68413},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"95ba3e85152aae374959b4eadb432514a8285b6b","private":false,"scripts":{"dev":"npm run build:watch","lint":"eslint src --ext .ts,.tsx","test":"jest --passWithNoTests","build":"vite build","typecheck":"tsc --noEmit","build:watch":"vite build --watch","prepublishOnly":"npm run build"},"_npmUser":{"name":"yuki-js","email":"ayukiyhs@gmail.com"},"_npmVersion":"10.9.2","description":"[![npm version](https://img.shields.io/npm/v/@aokiapp/reark-lark-api.svg)](https://www.npmjs.com/package/@aokiapp/reark-lark-api) [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](../../LICENSE)","directories":{},"sideEffects":false,"_nodeVersion":"22.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/reark-lark-api_0.4.0_1746635561832_0.9114350717267163","host":"s3://npm-registry-packages-npm-production"}},"0.4.1":{"name":"@aokiapp/reark-lark-api","version":"0.4.1","_id":"@aokiapp/reark-lark-api@0.4.1","maintainers":[{"name":"yuki-js","email":"ayukiyhs@gmail.com"}],"dist":{"shasum":"3c4225ebd24cb5768a3d8f058a72a20efdb4fd86","tarball":"https://registry.npmjs.org/@aokiapp/reark-lark-api/-/reark-lark-api-0.4.1.tgz","fileCount":26,"integrity":"sha512-5MwseywaHJCo/rX/YTleFo6ja4kEOMXIfSwyU/MnTgKikz8DvfbhTID3uF4e3GplLsuQgasJ/2lRCpFQ5WjnhA==","signatures":[{"sig":"MEQCIFHM0ZR0jmmiVWUUdGSedT4hrj1pNFy1OqIODn2F577mAiBmCibzNdaijBEYgKBjgmGnmPYhfQsIUIOrfK2DQ3UD6Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":68456},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"57fdac0bc05fff8c0c81fcc76307125c218b7e64","private":false,"scripts":{"dev":"npm run build:watch","lint":"eslint src --ext .ts,.tsx","test":"jest --passWithNoTests","build":"vite build","typecheck":"tsc --noEmit","build:watch":"vite build --watch","prepublishOnly":"npm run build"},"_npmUser":{"name":"yuki-js","email":"ayukiyhs@gmail.com"},"_npmVersion":"10.9.2","description":"[![npm version](https://img.shields.io/npm/v/@aokiapp/reark-lark-api.svg)](https://www.npmjs.com/package/@aokiapp/reark-lark-api) [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](../../LICENSE)","directories":{},"sideEffects":false,"_nodeVersion":"22.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/reark-lark-api_0.4.1_1746635844136_0.06248300531711437","host":"s3://npm-registry-packages-npm-production"}},"0.4.2":{"name":"@aokiapp/reark-lark-api","version":"0.4.2","_id":"@aokiapp/reark-lark-api@0.4.2","maintainers":[{"name":"yuki-js","email":"ayukiyhs@gmail.com"}],"dist":{"shasum":"7441fd7d552f664741b43d3014e5a40d760b79b7","tarball":"https://registry.npmjs.org/@aokiapp/reark-lark-api/-/reark-lark-api-0.4.2.tgz","fileCount":26,"integrity":"sha512-EHo7n2UhnEfs20v95ago9MUg+JszmvI3uUSo/rNZfYI06hayFZiud30wG+SUeQgmfdRO/5fXhUVBqciMYYeBNA==","signatures":[{"sig":"MEUCIQCdFvQhY8fr6q305d/P8Vfb2JS9ehS9bkVY7wyPMR8ONQIgQYI2g+II1JKQpehAiHwO9xlhux8JRFLOzzjwV0rJmuw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":68507},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"6ab1efcbab5e7986068c3d63b370f5a15555bdc4","private":false,"scripts":{"dev":"npm run build:watch","lint":"eslint src --ext .ts,.tsx","test":"jest --passWithNoTests","build":"vite build","typecheck":"tsc --noEmit","build:watch":"vite build --watch","prepublishOnly":"npm run build"},"_npmUser":{"name":"yuki-js","email":"ayukiyhs@gmail.com"},"_npmVersion":"10.9.2","description":"[![npm version](https://img.shields.io/npm/v/@aokiapp/reark-lark-api.svg)](https://www.npmjs.com/package/@aokiapp/reark-lark-api) [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](../../LICENSE)","directories":{},"sideEffects":false,"_nodeVersion":"22.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/reark-lark-api_0.4.2_1746637149043_0.4170498909737179","host":"s3://npm-registry-packages-npm-production"}},"0.4.3":{"name":"@aokiapp/reark-lark-api","version":"0.4.3","_id":"@aokiapp/reark-lark-api@0.4.3","maintainers":[{"name":"yuki-js","email":"ayukiyhs@gmail.com"}],"dist":{"shasum":"0eb9ada553e60eee5454153cd75d612630823aff","tarball":"https://registry.npmjs.org/@aokiapp/reark-lark-api/-/reark-lark-api-0.4.3.tgz","fileCount":23,"integrity":"sha512-cFbBi8U8Jc3lT6VqDh4YATdXnEhHmZo2d/9dZ6xB9Y9QVjCtFOAYyB2ooSJXPSY8okHeRzzszZyJ2HnrL2mZuQ==","signatures":[{"sig":"MEQCIHtMR7GVtbZ9cuegbZByRws+HnoPhN2SXtmA3qDeIUKKAiA0NOLOPkrbo80NIKjCIarqdcBUcL4m177Q/gYMpNYOwg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":67472},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"fc9daaf6967c1b818c897943ee13dee9e14d9cca","private":false,"scripts":{"dev":"npm run build:watch","lint":"eslint src --ext .ts,.tsx","test":"jest --passWithNoTests","build":"vite build","typecheck":"tsc --noEmit","build:watch":"vite build --watch","prepublishOnly":"npm run build"},"_npmUser":{"name":"yuki-js","email":"ayukiyhs@gmail.com"},"_npmVersion":"10.8.2","description":"[![npm version](https://img.shields.io/npm/v/@aokiapp/reark-lark-api.svg)](https://www.npmjs.com/package/@aokiapp/reark-lark-api) [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](../../LICENSE)","directories":{},"sideEffects":false,"_nodeVersion":"20.19.1","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/reark-lark-api_0.4.3_1746638276458_0.3399550967198701","host":"s3://npm-registry-packages-npm-production"}},"0.4.4":{"name":"@aokiapp/reark-lark-api","version":"0.4.4","_id":"@aokiapp/reark-lark-api@0.4.4","maintainers":[{"name":"yuki-js","email":"ayukiyhs@gmail.com"}],"dist":{"shasum":"9fd733f68e71e5124ddb75cc1d025b2547088eb2","tarball":"https://registry.npmjs.org/@aokiapp/reark-lark-api/-/reark-lark-api-0.4.4.tgz","fileCount":23,"integrity":"sha512-DhtSWY7TT0G7qQ226fWiCdCDNHNGCnRveImw8DOIC0o2XC8L2eTTbyQ0TEJDI1Aj40XPGysZ/GAYZmiSDjHryg==","signatures":[{"sig":"MEQCIFmrq8IyrxeyAb70AJq1zFt1dPfgRN6GZsqI1yesU9X1AiAH/ysF9V5r1v8I5xJpcS1O4TKDyTaSCSxhGP5n2Y3qGQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":67518},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"36d4ae51254d69e0e9f94a8964c7b43a46cbd126","private":false,"scripts":{"dev":"npm run build:watch","lint":"eslint src --ext .ts,.tsx","test":"jest --passWithNoTests","build":"vite build","typecheck":"tsc --noEmit","build:watch":"vite build --watch","prepublishOnly":"npm run build"},"_npmUser":{"name":"yuki-js","email":"ayukiyhs@gmail.com"},"_npmVersion":"10.8.2","description":"[![npm version](https://img.shields.io/npm/v/@aokiapp/reark-lark-api.svg)](https://www.npmjs.com/package/@aokiapp/reark-lark-api) [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](../../LICENSE)","directories":{},"sideEffects":false,"_nodeVersion":"20.19.1","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/reark-lark-api_0.4.4_1746671672151_0.17784662251832084","host":"s3://npm-registry-packages-npm-production"}},"0.5.0":{"name":"@aokiapp/reark-lark-api","version":"0.5.0","_id":"@aokiapp/reark-lark-api@0.5.0","maintainers":[{"name":"yuki-js","email":"ayukiyhs@gmail.com"}],"dist":{"shasum":"d3902af620ba87558b42cb5c16027649439b72b3","tarball":"https://registry.npmjs.org/@aokiapp/reark-lark-api/-/reark-lark-api-0.5.0.tgz","fileCount":23,"integrity":"sha512-SrptthWHmHJCwHXZOrDjqHL32ne3S3jcatqGIWJUuF0YgPDLenKsjSCw5fPSUQ9AqTYs9jysppP7G523beFP3Q==","signatures":[{"sig":"MEQCIDZh9Oh5qw5a5lmCFHA5ojg3oqaJh3lq4qpqyQIEAlY5AiB4Ed+ph9V9SU6V4Xp/xHzKBGDsuzoSk+TdutLFe0uPOQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":67561},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"b83226b42ee491b656275992d2f8a1a6412ac6ca","private":false,"scripts":{"dev":"npm run build:watch","lint":"eslint src --ext .ts,.tsx","test":"jest --passWithNoTests","build":"vite build","typecheck":"tsc --noEmit","build:watch":"vite build --watch","prepublishOnly":"npm run build"},"_npmUser":{"name":"yuki-js","email":"ayukiyhs@gmail.com"},"_npmVersion":"10.8.2","description":"[![npm version](https://img.shields.io/npm/v/@aokiapp/reark-lark-api.svg)](https://www.npmjs.com/package/@aokiapp/reark-lark-api) [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](../../LICENSE)","directories":{},"sideEffects":false,"_nodeVersion":"20.19.1","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/reark-lark-api_0.5.0_1746877754322_0.8361563433659682","host":"s3://npm-registry-packages-npm-production"}},"0.5.1":{"name":"@aokiapp/reark-lark-api","version":"0.5.1","private":false,"publishConfig":{"access":"public"},"main":"dist/index.js","types":"dist/index.d.ts","scripts":{"lint":"eslint src --ext .ts,.tsx","typecheck":"tsc --noEmit","test":"jest --passWithNoTests","build":"vite build","build:watch":"vite build --watch","dev":"npm run build:watch","prepublishOnly":"npm run build"},"sideEffects":false,"_id":"@aokiapp/reark-lark-api@0.5.1","gitHead":"944d05e44237cb75a334ed7482888236f1f97e06","description":"[![npm version](https://img.shields.io/npm/v/@aokiapp/reark-lark-api.svg)](https://www.npmjs.com/package/@aokiapp/reark-lark-api) [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](../../LICENSE)","_nodeVersion":"20.19.1","_npmVersion":"10.8.2","dist":{"integrity":"sha512-O2ejIc14s0QzAIViK4XWHVdyEQy3cvGddA8RVLfyudpsIJqX4x6Tu8MN4lEJAcs8grbFHtuflyXZIAcWICKPHg==","shasum":"5a28a268b5fb4c1020c75c67a7e1314c7d4c8c02","tarball":"https://registry.npmjs.org/@aokiapp/reark-lark-api/-/reark-lark-api-0.5.1.tgz","fileCount":23,"unpackedSize":67630,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQC1AYABS75AZ9aLUxVaYTvAhqJ7ouKKtIzoZg5659ltWgIhALDSczaRBtsJXKptotKml1ZfQAEzCOrmVCJeNy0BXFxR"}]},"_npmUser":{"name":"yuki-js","email":"ayukiyhs@gmail.com"},"directories":{},"maintainers":[{"name":"yuki-js","email":"ayukiyhs@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/reark-lark-api_0.5.1_1746898451256_0.31923172026222857"},"_hasShrinkwrap":false}},"time":{"created":"2025-05-06T16:44:36.810Z","modified":"2025-05-10T17:34:11.646Z","0.3.1":"2025-05-06T16:44:37.057Z","0.3.2":"2025-05-06T16:47:20.525Z","0.3.3":"2025-05-06T16:49:40.337Z","0.3.4":"2025-05-06T16:51:50.151Z","0.4.0":"2025-05-07T16:32:42.026Z","0.4.1":"2025-05-07T16:37:24.324Z","0.4.2":"2025-05-07T16:59:09.230Z","0.4.3":"2025-05-07T17:17:56.671Z","0.4.4":"2025-05-08T02:34:32.446Z","0.5.0":"2025-05-10T11:49:14.525Z","0.5.1":"2025-05-10T17:34:11.447Z"},"description":"[![npm version](https://img.shields.io/npm/v/@aokiapp/reark-lark-api.svg)](https://www.npmjs.com/package/@aokiapp/reark-lark-api) [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](../../LICENSE)","maintainers":[{"name":"yuki-js","email":"ayukiyhs@gmail.com"}],"readme":"# @aokiapp/reark-lark-api\n\n[![npm version](https://img.shields.io/npm/v/@aokiapp/reark-lark-api.svg)](https://www.npmjs.com/package/@aokiapp/reark-lark-api)\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](../../LICENSE)\n\n> Utilities and TypeScript types for interacting with the Lark (Feishu) API.  \n> Provides a unified data-fetching and transformation layer for the reark monorepo.\n\n---\n\n## Table of Contents\n\n- [Overview](#overview)\n- [Key Features](#key-features)\n- [Installation](#installation)\n- [Usage](#usage)\n- [API Reference](#api-reference)\n  - [Functions](#functions)\n  - [Types](#types)\n- [Extension & Customization](#extension--customization)\n- [Related Documentation](#related-documentation)\n- [Contributing](#contributing)\n- [Changelog](#changelog)\n- [License](#license)\n\n---\n\n## Overview\n\n`@aokiapp/reark-lark-api` provides utilities and types for interacting with the Lark (Feishu) API, focusing on:\n\n- Fetching and processing document blocks and comments\n- Downloading files\n- Accessing Bitable (Base) records\n- Ensuring type safety and consistency across the monorepo\n\n**Role in Monorepo:**  \nThis package is used by the core, renderer, and server packages to provide a unified, type-safe data model for Lark content.\n\n---\n\n## Key Features\n\n- Fetch Lark document blocks (paged or all)\n- Download files and fetch comments\n- Batch file download URL retrieval (with chunking/rate limit handling)\n- Access Lark Bitable (Base) records\n- Comprehensive TypeScript types for all API objects\n\n---\n\n## Installation\n\n```bash\nnpm install @aokiapp/reark-lark-api\n# or\nyarn add @aokiapp/reark-lark-api\n# or\npnpm add @aokiapp/reark-lark-api\n```\n\n---\n\n## Usage\n\n### 1. Authentication\n\nBefore making any API calls, set your Lark app credentials:\n\n```ts\nimport { setCredentials } from \"@aokiapp/reark-lark-api\";\n\nsetCredentials(\"your-app-id\", \"your-app-secret\");\n```\n\n### 2. Fetch Document Blocks\n\n```ts\nimport {\n  getDocumentBlocks,\n  fetchAllDocumentBlocks,\n} from \"@aokiapp/reark-lark-api\";\n\n// Fetch a single page of blocks\nconst page = await getDocumentBlocks(\"doc-id\");\n\n// Fetch all blocks (handles pagination)\nconst allBlocks = await fetchAllDocumentBlocks(\"doc-id\");\n```\n\n### 3. Download a File\n\n```ts\nimport { getFile } from \"@aokiapp/reark-lark-api\";\n\nconst blob = await getFile(\"file-token\");\n// Use blob as needed (e.g., download, display)\n```\n\n### 4. Fetch Comments\n\n```ts\nimport { getComments } from \"@aokiapp/reark-lark-api\";\n\nconst comments = await getComments(\"file-token\");\n```\n\n### 5. Batch Download URLs\n\n```ts\nimport {\n  batchGetTmpDownloadUrls,\n  batchGetTmpDownloadUrlsChunked,\n} from \"@aokiapp/reark-lark-api\";\n\nconst urls = await batchGetTmpDownloadUrls([\"token1\", \"token2\"]);\nconst chunkedUrls = await batchGetTmpDownloadUrlsChunked(\n  [\"token1\", \"token2\"],\n  10,\n);\n```\n\n### 6. Access Bitable (Base) Records\n\n```ts\nimport { listBaseRecords } from \"@aokiapp/reark-lark-api\";\n\nconst records = await listBaseRecords({\n  appToken: \"app-token\",\n  tableId: \"table-id\",\n  pageSize: 100,\n});\n```\n\n---\n\n## API Reference\n\n### Functions\n\n#### `setCredentials(appId: string, appSecret: string): void`\n\nSet the Lark app credentials for all subsequent API calls.\n\n#### `getDocumentBlocks(documentId: string, pageToken?: string): Promise<DocumentBlockResponse>`\n\nFetch a single page of blocks for a given document.\n\n#### `fetchAllDocumentBlocks(documentId: string): Promise<Block[]>`\n\nFetch all blocks for a document, handling pagination.\n\n#### `getFile(fileToken: string): Promise<Blob>`\n\nDownload a file as a Blob.\n\n#### `getComments(fileToken: string): Promise<CommentListResponse>`\n\nFetch comments for a given file (docx).\n\n#### `batchGetTmpDownloadUrls(fileTokens: string[]): Promise<Record<string, string>>`\n\nFetch temporary download URLs for multiple file tokens.\n\n#### `batchGetTmpDownloadUrlsChunked(fileTokens: string[], batchSize?: number): Promise<Record<string, string>>`\n\nFetch temporary download URLs for multiple file tokens, splitting requests into chunks to avoid rate limits.\n\n#### `listBaseRecords(params: ListBaseRecordsParams): Promise<ListBaseRecordsResponse>`\n\nFetch records from a Lark Bitable (Base) table.\n\n---\n\n### Types\n\n#### `Block`\n\n<details>\n<summary>Click to expand</summary>\n\n```ts\nexport type Block = {\n  block_id: string;\n  block_type: number;\n  parent_id?: string;\n  // ...plus all fields as per Lark API (see source for full details)\n  // Includes text, style, children, etc.\n};\n```\n\n- See [types/block.ts](./src/types/block.ts) for all fields and subtypes (Align, CodeLanguage, TextStyle, TextElementStyle, Link, TextRun, MentionUser, MentionDoc, Reminder, etc.)\n\n</details>\n\n#### `DocumentBlockResponse`\n\n```ts\nexport type DocumentBlockResponse = {\n  code: number;\n  msg: string;\n  data: {\n    has_more?: boolean;\n    page_token?: string;\n    items: (Partial<Block> & {\n      block_id?: string;\n      block_type?: number;\n      parent_id?: string;\n    })[];\n  };\n};\n```\n\n#### `CommentListResponse`\n\n```ts\nexport type CommentListResponse = {\n  code: number;\n  msg: string;\n  data: {\n    has_more?: boolean;\n    page_token?: string;\n    items: CommentData[];\n  };\n};\n```\n\n#### `CommentData`\n\n```ts\nexport type CommentData = {\n  comment_id: string;\n  user_id: string;\n  create_time: number;\n  update_time: number;\n  is_solved: boolean;\n  solved_time: number;\n  solver_user_id: string;\n  has_more: boolean;\n  page_token: string;\n  is_whole: boolean;\n  quote: string;\n  reply_list?: ReplyList;\n};\n```\n\n#### `ListBaseRecordsParams`\n\n```ts\nexport type ListBaseRecordsParams = {\n  appToken: string;\n  tableId: string;\n  viewId?: string;\n  pageSize?: number;\n  pageToken?: string;\n  filter?: string;\n  sort?: string[];\n  fieldNames?: string[];\n  textFieldAsArray?: boolean;\n  userIdType?: \"open_id\" | \"union_id\" | \"user_id\";\n  displayFormulaRef?: boolean;\n  automaticFields?: boolean;\n};\n```\n\n#### `BaseRecord`\n\n```ts\nexport type BaseRecord = {\n  record_id: string;\n  fields: Record<string, unknown>;\n  created_by?: Person;\n  created_time?: number;\n  last_modified_by?: Person;\n  last_modified_time?: number;\n};\n```\n\n#### `ListBaseRecordsResponse`\n\n```ts\nexport type ListBaseRecordsResponse = {\n  code: number;\n  msg: string;\n  data: {\n    items: BaseRecord[];\n    page_token?: string;\n    has_more?: boolean;\n    total?: number;\n  };\n};\n```\n\n#### All other types (Align, CodeLanguage, TextStyle, etc.)\n\nSee [src/types/block.ts](./src/types/block.ts) and [src/types/api.ts](./src/types/api.ts) for exhaustive details.\n\n---\n\n## Extension & Customization\n\n- **Authentication:** Use `setCredentials` to provide your Lark app credentials.\n- **Advanced Usage:** You may extend or wrap API utilities for custom needs (e.g., custom error handling, logging, etc.).\n- **Type Safety:** All API responses are fully typed for safe integration.\n\n---\n\n## Related Documentation\n\n- [Lark API Reference (deeper details)](../../docs/api/lark-api.md)\n- [Core Package API](../../docs/api/core.md)\n- [Renderer Package API](../../docs/api/renderer.md)\n\n---\n\n## Contributing\n\nContributions are welcome! Please see the [monorepo root README](../../README.md) for guidelines.\n\n- Run tests and lint before submitting PRs.\n- Keep documentation and types up to date with code changes.\n\n---\n\n## Changelog\n\nSee [CHANGELOG.md](./CHANGELOG.md) for release history.\n\n---\n\n## License\n\nMIT © AokiApp Contributors\n","readmeFilename":"README.md"}