/
setAlias.ts
29 lines (28 loc) · 1.03 KB
/
setAlias.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
/**
* Copyright (c) 2019 Burst Apps Team
* Copyright (c) 2022 Signum Network
*/
import {ChainService} from '../../../service/chainService';
import {UnsignedTransaction} from '../../../typings/unsignedTransaction';
import {SetAliasArgs} from '../../../typings/args/setAliasArgs';
import {signIfPrivateKey} from '../../../internal/signIfPrivateKey';
import {DefaultDeadline} from '../../../constants';
/**
* Use with [[ApiComposer]] and belongs to [[AccountApi]].
*
* See details at [[AccountApi.setAlias]]
*
* @module core.api.factories
*/
export const setAlias = (service: ChainService) =>
(args: SetAliasArgs) =>
signIfPrivateKey(service, args, async (a: SetAliasArgs) => {
const parameters = {
aliasName: a.aliasName,
aliasURI: a.aliasURI,
deadline: a.deadline || DefaultDeadline,
feeNQT: a.feePlanck,
publicKey: a.senderPublicKey
};
return service.send<UnsignedTransaction>('setAlias', parameters);
});