-
Notifications
You must be signed in to change notification settings - Fork 203
/
lookupAccountAppLocalStates.ts
140 lines (133 loc) · 3.78 KB
/
lookupAccountAppLocalStates.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
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
import JSONRequest from '../jsonrequest';
import HTTPClient from '../../client';
import IntDecoding from '../../../types/intDecoding';
export default class LookupAccountAppLocalStates extends JSONRequest {
/**
* Returns application local state about the given account.
*
* #### Example
* ```typescript
* const address = "XBYLS2E6YI6XXL5BWCAMOA4GTWHXWENZMX5UHXMRNWWUQ7BXCY5WC5TEPA";
* const accountAppLocalStates = await indexerClient.lookupAccountAppLocalStates(address).do();
* ```
*
* [Response data schema details](https://developer.algorand.org/docs/rest-apis/indexer/#get-v2accountsaccount-idapps-local-state)
* @param account - The address of the account to look up.
* @category GET
*/
constructor(
c: HTTPClient,
intDecoding: IntDecoding,
private account: string
) {
super(c, intDecoding);
this.account = account;
}
/**
* @returns `/v2/accounts/${account}/apps-local-state`
*/
path() {
return `/v2/accounts/${this.account}/apps-local-state`;
}
/**
* Add a limit for filter.
*
* #### Example
* ```typescript
* const address = "XBYLS2E6YI6XXL5BWCAMOA4GTWHXWENZMX5UHXMRNWWUQ7BXCY5WC5TEPA";
* const maxResults = 20;
* const accountAssets = await indexerClient
* .lookupAccountAppLocalStates(address)
* .limit(maxResults)
* .do();
* ```
*
* @param limit - maximum number of results to return.
* @category query
*/
limit(limit: number) {
this.query.limit = limit;
return this;
}
/**
* Specify round to filter with.
*
* #### Example
* ```typescript
* const address = "XBYLS2E6YI6XXL5BWCAMOA4GTWHXWENZMX5UHXMRNWWUQ7BXCY5WC5TEPA";
* const targetBlock = 18309917;
* const accountAssets = await indexerClient
* .lookupAccountAppLocalStates(address)
* .round(targetBlock)
* .do();
* ```
* @param round
* @category query
*/
round(round: number) {
this.query.round = round;
return this;
}
/**
* Specify the next page of results.
*
* #### Example
* ```typescript
* const address = "XBYLS2E6YI6XXL5BWCAMOA4GTWHXWENZMX5UHXMRNWWUQ7BXCY5WC5TEPA";
* const maxResults = 20;
*
* const accountAssetsPage1 = await indexerClient
* .lookupAccountAppLocalStates(address)
* .limit(maxResults)
* .do();
*
* const accountAssetsPage2 = await indexerClient
* .lookupAccountAppLocalStates(address)
* .limit(maxResults)
* .next(accountAssetsPage1["next-token"])
* .do();
* ```
* @param nextToken - provided by the previous results.
*/
nextToken(nextToken: string) {
this.query.next = nextToken;
return this;
}
/**
* Include all items including closed accounts, deleted applications, destroyed assets, opted-out asset holdings, and closed-out application localstates
*
* #### Example
* ```typescript
* const address = "XBYLS2E6YI6XXL5BWCAMOA4GTWHXWENZMX5UHXMRNWWUQ7BXCY5WC5TEPA";
* const accountAssets = await indexerClient
* .lookupAccountAppLocalStates(address)
* .includeAll(false)
* .do();
* ```
* @param value
* @category query
*/
includeAll(value = true) {
this.query['include-all'] = value;
return this;
}
/**
* Specify an applicationID to search for.
*
* #### Example
* ```typescript
* const applicationID = 163650;
* const address = "XBYLS2E6YI6XXL5BWCAMOA4GTWHXWENZMX5UHXMRNWWUQ7BXCY5WC5TEPA";
* const accountApplications = await indexerClient
* .lookupAccountAppLocalStates(address)
* .applicationID(applicationID)
* .do();
* ```
* @param index - the applicationID
* @category query
*/
applicationID(index: number) {
this.query['application-id'] = index;
return this;
}
}