|
5549 | 5549 | "signature": { |
5550 | 5550 | "type": "object", |
5551 | 5551 | "properties": { |
5552 | | - "signatureType": { "type": "number" }, |
5553 | | - "v": { "type": "number" }, |
5554 | | - "r": { "type": "string" }, |
5555 | | - "s": { "type": "string" }, |
5556 | | - "signatureBytes": { "type": "string" } |
| 5552 | + "signatureType": { |
| 5553 | + "type": "number", |
| 5554 | + "description": "Signature type enum: `2` (EIP712), `3` (EthSign), or `5` (Raw). Determines which other fields are required." |
| 5555 | + }, |
| 5556 | + "v": { |
| 5557 | + "type": "number", |
| 5558 | + "description": "ECDSA recovery id. Required when signatureType is `2` (EIP712) or `3` (EthSign)." |
| 5559 | + }, |
| 5560 | + "r": { |
| 5561 | + "type": "string", |
| 5562 | + "description": "ECDSA signature r value (hex string). Required when signatureType is `2` (EIP712) or `3` (EthSign)." |
| 5563 | + }, |
| 5564 | + "s": { |
| 5565 | + "type": "string", |
| 5566 | + "description": "ECDSA signature s value (hex string). Required when signatureType is `2` (EIP712) or `3` (EthSign)." |
| 5567 | + }, |
| 5568 | + "signatureBytes": { |
| 5569 | + "type": "string", |
| 5570 | + "description": "Raw signature bytes (hex string). Required when signatureType is `5` (Raw). Must not be provided for other signature types." |
| 5571 | + } |
5557 | 5572 | }, |
5558 | 5573 | "required": ["signatureType"], |
5559 | | - "additionalProperties": false |
| 5574 | + "additionalProperties": false, |
| 5575 | + "description": "A discriminated union based on `signatureType`. For EIP712 (`signatureType: 2`) or EthSign (`signatureType: 3`): provide `v`, `r`, and `s`. For Raw (`signatureType: 5`): provide `signatureBytes` only. Use Raw (`signatureType: 5`) to support smart contract wallets (e.g. ERC-1271) that return opaque signature bytes." |
5560 | 5576 | } |
5561 | 5577 | }, |
5562 | 5578 | "required": ["type", "eip712", "signature"], |
|
5774 | 5790 | "signature": { |
5775 | 5791 | "type": "object", |
5776 | 5792 | "properties": { |
5777 | | - "signatureType": { "type": "number" }, |
5778 | | - "v": { "type": "number" }, |
5779 | | - "r": { "type": "string" }, |
5780 | | - "s": { "type": "string" }, |
5781 | | - "signatureBytes": { "type": "string" } |
| 5793 | + "signatureType": { |
| 5794 | + "type": "number", |
| 5795 | + "description": "Signature type enum: `2` (EIP712), `3` (EthSign), or `5` (Raw). Determines which other fields are required." |
| 5796 | + }, |
| 5797 | + "v": { |
| 5798 | + "type": "number", |
| 5799 | + "description": "ECDSA recovery id. Required when signatureType is `2` (EIP712) or `3` (EthSign)." |
| 5800 | + }, |
| 5801 | + "r": { |
| 5802 | + "type": "string", |
| 5803 | + "description": "ECDSA signature r value (hex string). Required when signatureType is `2` (EIP712) or `3` (EthSign)." |
| 5804 | + }, |
| 5805 | + "s": { |
| 5806 | + "type": "string", |
| 5807 | + "description": "ECDSA signature s value (hex string). Required when signatureType is `2` (EIP712) or `3` (EthSign)." |
| 5808 | + }, |
| 5809 | + "signatureBytes": { |
| 5810 | + "type": "string", |
| 5811 | + "description": "Raw signature bytes (hex string). Required when signatureType is `5` (Raw). Must not be provided for other signature types." |
| 5812 | + } |
5782 | 5813 | }, |
5783 | 5814 | "required": ["signatureType"], |
5784 | | - "additionalProperties": false |
| 5815 | + "additionalProperties": false, |
| 5816 | + "description": "A discriminated union based on `signatureType`. For EIP712 (`signatureType: 2`) or EthSign (`signatureType: 3`): provide `v`, `r`, and `s`. For Raw (`signatureType: 5`): provide `signatureBytes` only. Use Raw (`signatureType: 5`) to support smart contract wallets (e.g. ERC-1271) that return opaque signature bytes." |
5785 | 5817 | } |
5786 | 5818 | }, |
5787 | 5819 | "required": ["type", "eip712", "signature"], |
|
0 commit comments