/
TokenBuildersClient.ts
118 lines (104 loc) · 3.31 KB
/
TokenBuildersClient.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
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
import {
approveTokenDelegateAuthorityBuilder,
ApproveTokenDelegateAuthorityBuilderParams,
createMintBuilder,
CreateMintBuilderParams,
createTokenBuilder,
CreateTokenBuilderParams,
createTokenIfMissingBuilder,
CreateTokenIfMissingBuilderParams,
createTokenWithMintBuilder,
CreateTokenWithMintBuilderParams,
freezeTokensBuilder,
FreezeTokensBuilderParams,
mintTokensBuilder,
MintTokensBuilderParams,
revokeTokenDelegateAuthorityBuilder,
RevokeTokenDelegateAuthorityBuilderParams,
sendTokensBuilder,
SendTokensBuilderParams,
thawTokensBuilder,
ThawTokensBuilderParams,
} from './operations';
import type { Metaplex } from '@/Metaplex';
import { TransactionBuilderOptions } from '@/utils';
/**
* This client allows you to access the underlying Transaction Builders
* for the write operations of the Token module.
*
* @see {@link TokenClient}
* @group Module Builders
* */
export class TokenBuildersClient {
constructor(protected readonly metaplex: Metaplex) {}
// -----------------
// Create
// -----------------
/** {@inheritDoc createMintBuilder} */
createMint(
input: CreateMintBuilderParams,
options?: TransactionBuilderOptions
) {
return createMintBuilder(this.metaplex, input, options);
}
/** {@inheritDoc createTokenBuilder} */
createToken(
input: CreateTokenBuilderParams,
options?: TransactionBuilderOptions
) {
return createTokenBuilder(this.metaplex, input, options);
}
/** {@inheritDoc createTokenIfMissingBuilder} @internal */
createTokenIfMissing(
input: CreateTokenIfMissingBuilderParams,
options?: TransactionBuilderOptions
) {
return createTokenIfMissingBuilder(this.metaplex, input, options);
}
/** {@inheritDoc createTokenWithMintBuilder} */
createTokenWithMint(
input: CreateTokenWithMintBuilderParams,
options?: TransactionBuilderOptions
) {
return createTokenWithMintBuilder(this.metaplex, input, options);
}
// -----------------
// Update
// -----------------
/** {@inheritDoc mintTokensBuilder} */
mint(input: MintTokensBuilderParams, options?: TransactionBuilderOptions) {
return mintTokensBuilder(this.metaplex, input, options);
}
/** {@inheritDoc sendTokensBuilder} */
send(input: SendTokensBuilderParams, options?: TransactionBuilderOptions) {
return sendTokensBuilder(this.metaplex, input, options);
}
/** {@inheritDoc freezeTokensBuilder} */
freeze(
input: FreezeTokensBuilderParams,
options?: TransactionBuilderOptions
) {
return freezeTokensBuilder(this.metaplex, input, options);
}
/** {@inheritDoc thawTokensBuilder} */
thaw(input: ThawTokensBuilderParams, options?: TransactionBuilderOptions) {
return thawTokensBuilder(this.metaplex, input, options);
}
// -----------------
// Delegate
// -----------------
/** {@inheritDoc approveTokenDelegateAuthorityBuilder} */
approveDelegateAuthority(
input: ApproveTokenDelegateAuthorityBuilderParams,
options?: TransactionBuilderOptions
) {
return approveTokenDelegateAuthorityBuilder(this.metaplex, input, options);
}
/** {@inheritDoc revokeTokenDelegateAuthorityBuilder} */
revokeDelegateAuthority(
input: RevokeTokenDelegateAuthorityBuilderParams,
options?: TransactionBuilderOptions
) {
return revokeTokenDelegateAuthorityBuilder(this.metaplex, input, options);
}
}