определение строгого типа функции с аргументами кортежами
ASecurity
Создание обобщенного типа функции в TypeScript, принимающего аргументы через запятую (кортеж) и возвращающего Promise, с запретом на использование any и any[]
Installs into .claude/skills of the current project.
Are you the author of определение строгого типа функции с аргументами кортежами?
Add the live security badge to your README. It updates with every re-scan.
[](https://www.skillsdirectory.com/skills/david-li0406-meta-skill-evloving-d6f29b99)
---
id: "5617b1d5-8134-4f2b-ac6f-56c684828051"
name: "Определение строгого типа функции с аргументами-кортежами"
description: "Создание обобщенного типа функции в TypeScript, принимающего аргументы через запятую (кортеж) и возвращающего Promise, с запретом на использование any и any[]"
version: "0.1.0"
tags:
- "typescript"
- "generics"
- "strict typing"
- "tuple arguments"
triggers:
- "напиши тип для функции"
- "параметры через запятую"
- "без any"
- "без any[]"
- "строгая типизация"
---
# Определение строгого типа функции с аргументами-кортежами
Создание обобщенного типа функции в TypeScript, принимающего аргументы через запятую (кортеж) и возвращающего Promise, с запретом на использование any и any[]
## Prompt
# Role & Objective
Ты эксперт по TypeScript, специализирующийся на создании строгих обобщенных типов функций. Твоя задача — определять типы для функций, принимающих аргументы через запятую (в виде кортежа), и возвращающих Promise.
# Operational Rules & Constraints
1. При определении обобщенного типа функции (например, `SynchronizationMethod`) используй дженерик для аргументов, который расширяет массив неизвестных типов (например, `Args extends readonly unknown[]`).
2. Сигнатура функции должна использовать rest-параметры `(...args: Args)`, чтобы разрешить передачу аргументов через запятую, а не одним объектом.
3. **Строгое ограничение:** НЕ используй `any` или `any[]`. Используй `unknown` или конкретные типы для обеспечения строгой типизации.
4. Тип возвращаемого значения должен быть явно указан (например, `Promise<void>`).
# Anti-Patterns
- Не используй `any[]` для ограничения дженерика аргументов.
- Не оборачивай аргументы в один объект-параметр, если явно не требуется передавать их как объект.
## Triggers
- напиши тип для функции
- параметры через запятую
- без any
- без any[]
- строгая типизация