Conversation
- Added `burnToken` method to `Layer4Client` interface and `Layer4ClientImpl`. - Created `BurnTokenRequest` type for the new method. - Added `AGENTS.md` with project guidelines and rules. - Updated `.gitignore` to exclude `.roo` directory. - Refactored JSDoc comments for better readability in several request/response types.
…ds, and token endpoints - Add all request and response types for records, record requests, token supply, token requests, wallets - Fix async method return types (TokenRequestEntity/RecordRequestEntity instead of data types) - Remove CreateNewTokenResponse (duplicate of Token) - Add CLAUDE.md and expand AGENTS.md with full API reference - Add swagger.yaml
…ifiers
- ErrorHandler.handleError annotated as : never; redundant throw removed in BaseRestClient
- Layer4Error fields (error, statusCode, success) made optional; network errors now fall back to axios error message
- BaseRestClient HTTP methods changed from public to protected
- Token response type no longer extends BucketId (request); new TokenMetadata response type introduced
- payload: object replaced with Record<string, unknown> in TokenRequestEntity and RecordRequestEntity
- removeWallet return type tightened to BaseResponse<Record<string, unknown>>
- BucketId, TokenId, WalletId imports consolidated into request barrel across Layer4ClientImpl and Layer4Client
- Axios timeout set to 30 000 ms
- createWallets parameter renamed from params to data for consistency
- getRecordRequest and getWallet no longer pass empty { params: {} }; params only sent when non-empty
- Tests updated to reflect new behaviour and protected method access
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Add tsconfig.build.json to exclude tests from declaration output - Update rollup to use tsconfig.build.json — removes dist/types/__tests__/ from bundle - Add exports field with correct condition order (types → import → require) - Add sideEffects: false for tree-shaking - Add prepublishOnly script to enforce build before publish Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Covers installation, quick start, full API reference for tokens, token supply, token requests, records, record requests and wallets, error handling, async operation pattern, supported chains, and TypeScript types. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
TokenRequestEntity/RecordRequestEntityinstead of data types)CreateNewTokenResponsetype (replaced withToken)CLAUDE.mdCode review fixes
ErrorHandler.handleErrorannotated as: never; redundantthrowremoved inBaseRestClientLayer4Errorfields (error,statusCode,success) made optional; network errors now fall back to Axios error message instead ofundefinedBaseRestClientHTTP methods changed frompublictoprotectedTokenresponse type no longer extendsBucketId(request type); newTokenMetadataresponse type introduced to break request→response cross-dependencypayload: objectreplaced withRecord<string, unknown>inTokenRequestEntityandRecordRequestEntityremoveWalletreturn type tightened fromBaseResponse<object>toBaseResponse<Record<string, unknown>>BucketId,TokenId,WalletIdimports consolidated into the request barrel inLayer4ClientImplandLayer4ClientcreateWalletsparameter renamed fromparamstodatafor consistency with other POST methodsgetRecordRequestandgetWalletno longer send empty{ params: {} }; params are only forwarded when non-emptyTest plan
npm test— 63/63 tests passnpx tsc --noEmit— no type errorsnpx eslint src/— no errorsnpm run build— CJS + ESM bundles produced cleanly🤖 Generated with Claude Code