(value: unknown)
| 641 | } |
| 642 | |
| 643 | function decodeLlmUsageQuery(value: unknown): LlmUsageQuery { |
| 644 | const query = requireRecord(value, 'usage query'); |
| 645 | assertAllowedKeys(query, LLM_USAGE_QUERY_FIELDS, 'LLM usage query'); |
| 646 | if (!Object.hasOwn(query, 'range')) throw invalidProtocolFrame('Invalid usage query fields'); |
| 647 | return { |
| 648 | range: decodeUsageRange(query.range), |
| 649 | ...optionalQueryText(query, 'connectionSlug'), |
| 650 | ...optionalQueryText(query, 'providerId'), |
| 651 | ...optionalQueryText(query, 'modelId'), |
| 652 | ...(query.status === undefined ? {} : { status: decodeUsageStatus(query.status) }), |
| 653 | }; |
| 654 | } |
| 655 | |
| 656 | function decodeToolUsageQuery(value: unknown): ToolUsageQuery { |
| 657 | const query = requireRecord(value, 'tool usage query'); |
no test coverage detected