это у вас и описано. Но проблема в том, что тс в рантайме нет. И определить, имплементация какого из перечисленых интерфейсов там сейчас находиться - нельзя. Вы можете написать ассерты const assertDepositRequest(param: unknown): param is DepositRequest => { // код, который если param типа DepositRequest возвращает тру, иначе фолс } Потом можно использовать где нибудь if (assertDepositRequest(data)) { // здесь у data тип уже DepositRequest }
спасибо
стоп. А ассерты могут что-то возвращать? И если да, то как это указать
они возвращают true или false
обычно проверяют, что у параметра есть определённые проперти. Так что зависит от вашей бизнес-логики. По какому критерию вы решаете, что data имеет тип DepositRequestTx? Вот это условие и запишите в асёрте
Обсуждают сегодня