UNPKG

@radixdlt/atom-transaction-mapping

Version:
28 lines 1.36 kB
import { UserAction, UserActionType } from '@radixdlt/actions'; import { AnySpunParticle, AnyUpParticle, ParticleBase } from '@radixdlt/atom'; import { Result } from 'neverthrow'; import { AddressT } from '@radixdlt/account'; import { ParticleGroupT } from '@radixdlt/atom/src/_types'; import { AmountT } from '@radixdlt/primitives/src/_types'; export declare type FungibleParticleTransitioner<From extends ParticleBase> = Readonly<{ transition: (input: Readonly<{ currentParticles: From[]; totalAmountToTransfer: AmountT; }>) => Result<AnySpunParticle[], Error>; }>; export declare type ActionToParticleGroupsMapper<T extends UserActionType = UserActionType> = Readonly<{ actionType: T; particleGroupsFromAction: (input: Readonly<{ action: UserAction<unknown>; upParticles: AnyUpParticle[]; addressOfActiveAccount: AddressT; }>) => Result<ParticleGroupT[], Error>; }>; export declare type MapperInput = Readonly<{ action: UserAction<unknown>; upParticles: AnyUpParticle[]; addressOfActiveAccount: AddressT; }>; export declare type TokenTransferActionToParticleGroupsMapper = ActionToParticleGroupsMapper<UserActionType.TOKEN_TRANSFER>; export declare type BurnTokensActionToParticleGroupsMapper = ActionToParticleGroupsMapper<UserActionType.BURN_TOKENS>; //# sourceMappingURL=_types.d.ts.map