1  // This file is autogenerated
2  #import "KBRPC.h"
3
4@implementation KBRCommonRequest
5
6@end
7
8@implementation KBRProveCommonRequest
9
10@end
11
12@implementation KBRIdentifyCommonRequest
13
14@end
15
16@implementation KBRIdentifyUiRequest
17
18- (void)displayTLFCreateWithInvite:(KBRDisplayTLFCreateWithInviteRequestParams *)params completion:(void (^)(NSError *error))completion {
19  NSDictionary *rparams = @{@"folderName": KBRValue(params.folderName), @"isPrivate": @(params.isPrivate), @"assertion": KBRValue(params.assertion), @"socialAssertion": KBRValue(params.socialAssertion), @"inviteLink": KBRValue(params.inviteLink), @"throttled": @(params.throttled)};
20  [self.client sendRequestWithMethod:@"keybase.1.identifyUi.displayTLFCreateWithInvite" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
21    completion(error);
22  }];
23}
24
25- (void)displayTLFCreateWithInviteWithFolderName:(NSString *)folderName isPrivate:(BOOL)isPrivate assertion:(NSString *)assertion socialAssertion:(KBRSocialAssertion *)socialAssertion inviteLink:(NSString *)inviteLink throttled:(BOOL)throttled completion:(void (^)(NSError *error))completion {
26  NSDictionary *rparams = @{@"folderName": KBRValue(folderName), @"isPrivate": @(isPrivate), @"assertion": KBRValue(assertion), @"socialAssertion": KBRValue(socialAssertion), @"inviteLink": KBRValue(inviteLink), @"throttled": @(throttled)};
27  [self.client sendRequestWithMethod:@"keybase.1.identifyUi.displayTLFCreateWithInvite" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
28    completion(error);
29  }];
30}
31
32- (void)delegateIdentifyUI:(void (^)(NSError *error, NSInteger n))completion {
33  NSDictionary *rparams = @{};
34  [self.client sendRequestWithMethod:@"keybase.1.identifyUi.delegateIdentifyUI" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
35    completion(error, 0);
36  }];
37}
38
39- (void)start:(KBRStartRequestParams *)params completion:(void (^)(NSError *error))completion {
40  NSDictionary *rparams = @{@"username": KBRValue(params.username), @"reason": KBRValue(params.reason), @"forceDisplay": @(params.forceDisplay)};
41  [self.client sendRequestWithMethod:@"keybase.1.identifyUi.start" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
42    completion(error);
43  }];
44}
45
46- (void)startWithUsername:(NSString *)username reason:(KBRIdentifyReason *)reason forceDisplay:(BOOL)forceDisplay completion:(void (^)(NSError *error))completion {
47  NSDictionary *rparams = @{@"username": KBRValue(username), @"reason": KBRValue(reason), @"forceDisplay": @(forceDisplay)};
48  [self.client sendRequestWithMethod:@"keybase.1.identifyUi.start" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
49    completion(error);
50  }];
51}
52
53- (void)displayKey:(KBRDisplayKeyRequestParams *)params completion:(void (^)(NSError *error))completion {
54  NSDictionary *rparams = @{@"key": KBRValue(params.key)};
55  [self.client sendRequestWithMethod:@"keybase.1.identifyUi.displayKey" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
56    completion(error);
57  }];
58}
59
60- (void)displayKeyWithKey:(KBRIdentifyKey *)key completion:(void (^)(NSError *error))completion {
61  NSDictionary *rparams = @{@"key": KBRValue(key)};
62  [self.client sendRequestWithMethod:@"keybase.1.identifyUi.displayKey" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
63    completion(error);
64  }];
65}
66
67- (void)reportLastTrack:(KBRReportLastTrackRequestParams *)params completion:(void (^)(NSError *error))completion {
68  NSDictionary *rparams = @{@"track": KBRValue(params.track)};
69  [self.client sendRequestWithMethod:@"keybase.1.identifyUi.reportLastTrack" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
70    completion(error);
71  }];
72}
73
74- (void)reportLastTrackWithTrack:(KBRTrackSummary *)track completion:(void (^)(NSError *error))completion {
75  NSDictionary *rparams = @{@"track": KBRValue(track)};
76  [self.client sendRequestWithMethod:@"keybase.1.identifyUi.reportLastTrack" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
77    completion(error);
78  }];
79}
80
81- (void)launchNetworkChecks:(KBRLaunchNetworkChecksRequestParams *)params completion:(void (^)(NSError *error))completion {
82  NSDictionary *rparams = @{@"identity": KBRValue(params.identity), @"user": KBRValue(params.user)};
83  [self.client sendRequestWithMethod:@"keybase.1.identifyUi.launchNetworkChecks" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
84    completion(error);
85  }];
86}
87
88- (void)launchNetworkChecksWithIdentity:(KBRIdentity *)identity user:(KBRUser *)user completion:(void (^)(NSError *error))completion {
89  NSDictionary *rparams = @{@"identity": KBRValue(identity), @"user": KBRValue(user)};
90  [self.client sendRequestWithMethod:@"keybase.1.identifyUi.launchNetworkChecks" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
91    completion(error);
92  }];
93}
94
95- (void)displayTrackStatement:(KBRDisplayTrackStatementRequestParams *)params completion:(void (^)(NSError *error))completion {
96  NSDictionary *rparams = @{@"stmt": KBRValue(params.stmt)};
97  [self.client sendRequestWithMethod:@"keybase.1.identifyUi.displayTrackStatement" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
98    completion(error);
99  }];
100}
101
102- (void)displayTrackStatementWithStmt:(NSString *)stmt completion:(void (^)(NSError *error))completion {
103  NSDictionary *rparams = @{@"stmt": KBRValue(stmt)};
104  [self.client sendRequestWithMethod:@"keybase.1.identifyUi.displayTrackStatement" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
105    completion(error);
106  }];
107}
108
109- (void)finishWebProofCheck:(KBRFinishWebProofCheckRequestParams *)params completion:(void (^)(NSError *error))completion {
110  NSDictionary *rparams = @{@"rp": KBRValue(params.rp), @"lcr": KBRValue(params.lcr)};
111  [self.client sendRequestWithMethod:@"keybase.1.identifyUi.finishWebProofCheck" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
112    completion(error);
113  }];
114}
115
116- (void)finishWebProofCheckWithRp:(KBRRemoteProof *)rp lcr:(KBRLinkCheckResult *)lcr completion:(void (^)(NSError *error))completion {
117  NSDictionary *rparams = @{@"rp": KBRValue(rp), @"lcr": KBRValue(lcr)};
118  [self.client sendRequestWithMethod:@"keybase.1.identifyUi.finishWebProofCheck" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
119    completion(error);
120  }];
121}
122
123- (void)finishSocialProofCheck:(KBRFinishSocialProofCheckRequestParams *)params completion:(void (^)(NSError *error))completion {
124  NSDictionary *rparams = @{@"rp": KBRValue(params.rp), @"lcr": KBRValue(params.lcr)};
125  [self.client sendRequestWithMethod:@"keybase.1.identifyUi.finishSocialProofCheck" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
126    completion(error);
127  }];
128}
129
130- (void)finishSocialProofCheckWithRp:(KBRRemoteProof *)rp lcr:(KBRLinkCheckResult *)lcr completion:(void (^)(NSError *error))completion {
131  NSDictionary *rparams = @{@"rp": KBRValue(rp), @"lcr": KBRValue(lcr)};
132  [self.client sendRequestWithMethod:@"keybase.1.identifyUi.finishSocialProofCheck" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
133    completion(error);
134  }];
135}
136
137- (void)displayCryptocurrency:(KBRDisplayCryptocurrencyRequestParams *)params completion:(void (^)(NSError *error))completion {
138  NSDictionary *rparams = @{@"c": KBRValue(params.c)};
139  [self.client sendRequestWithMethod:@"keybase.1.identifyUi.displayCryptocurrency" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
140    completion(error);
141  }];
142}
143
144- (void)displayCryptocurrencyWithC:(KBRCryptocurrency *)c completion:(void (^)(NSError *error))completion {
145  NSDictionary *rparams = @{@"c": KBRValue(c)};
146  [self.client sendRequestWithMethod:@"keybase.1.identifyUi.displayCryptocurrency" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
147    completion(error);
148  }];
149}
150
151- (void)reportTrackToken:(KBRReportTrackTokenRequestParams *)params completion:(void (^)(NSError *error))completion {
152  NSDictionary *rparams = @{@"trackToken": KBRValue(params.trackToken)};
153  [self.client sendRequestWithMethod:@"keybase.1.identifyUi.reportTrackToken" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
154    completion(error);
155  }];
156}
157
158- (void)reportTrackTokenWithTrackToken:(NSString *)trackToken completion:(void (^)(NSError *error))completion {
159  NSDictionary *rparams = @{@"trackToken": KBRValue(trackToken)};
160  [self.client sendRequestWithMethod:@"keybase.1.identifyUi.reportTrackToken" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
161    completion(error);
162  }];
163}
164
165- (void)displayUserCard:(KBRDisplayUserCardRequestParams *)params completion:(void (^)(NSError *error))completion {
166  NSDictionary *rparams = @{@"card": KBRValue(params.card)};
167  [self.client sendRequestWithMethod:@"keybase.1.identifyUi.displayUserCard" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
168    completion(error);
169  }];
170}
171
172- (void)displayUserCardWithCard:(KBRUserCard *)card completion:(void (^)(NSError *error))completion {
173  NSDictionary *rparams = @{@"card": KBRValue(card)};
174  [self.client sendRequestWithMethod:@"keybase.1.identifyUi.displayUserCard" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
175    completion(error);
176  }];
177}
178
179- (void)confirm:(KBRConfirmRequestParams *)params completion:(void (^)(NSError *error, KBRConfirmResult *confirmResult))completion {
180  NSDictionary *rparams = @{@"outcome": KBRValue(params.outcome)};
181  [self.client sendRequestWithMethod:@"keybase.1.identifyUi.confirm" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
182    if (error) {
183      completion(error, nil);
184      return;
185    }
186    KBRConfirmResult *result = retval ? [MTLJSONAdapter modelOfClass:KBRConfirmResult.class fromJSONDictionary:retval error:&error] : nil;
187    completion(error, result);
188  }];
189}
190
191- (void)confirmWithOutcome:(KBRIdentifyOutcome *)outcome completion:(void (^)(NSError *error, KBRConfirmResult *confirmResult))completion {
192  NSDictionary *rparams = @{@"outcome": KBRValue(outcome)};
193  [self.client sendRequestWithMethod:@"keybase.1.identifyUi.confirm" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
194    if (error) {
195      completion(error, nil);
196      return;
197    }
198    KBRConfirmResult *result = retval ? [MTLJSONAdapter modelOfClass:KBRConfirmResult.class fromJSONDictionary:retval error:&error] : nil;
199    completion(error, result);
200  }];
201}
202
203- (void)cancel:(void (^)(NSError *error))completion {
204  NSDictionary *rparams = @{};
205  [self.client sendRequestWithMethod:@"keybase.1.identifyUi.cancel" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
206    completion(error);
207  }];
208}
209
210- (void)finish:(void (^)(NSError *error))completion {
211  NSDictionary *rparams = @{};
212  [self.client sendRequestWithMethod:@"keybase.1.identifyUi.finish" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
213    completion(error);
214  }];
215}
216
217- (void)dismiss:(KBRDismissRequestParams *)params completion:(void (^)(NSError *error))completion {
218  NSDictionary *rparams = @{@"username": KBRValue(params.username), @"reason": KBRValue(params.reason)};
219  [self.client sendRequestWithMethod:@"keybase.1.identifyUi.dismiss" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
220    completion(error);
221  }];
222}
223
224- (void)dismissWithUsername:(NSString *)username reason:(KBRDismissReason *)reason completion:(void (^)(NSError *error))completion {
225  NSDictionary *rparams = @{@"username": KBRValue(username), @"reason": KBRValue(reason)};
226  [self.client sendRequestWithMethod:@"keybase.1.identifyUi.dismiss" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
227    completion(error);
228  }];
229}
230
231@end
232
233@implementation KBRSaltpackUiRequest
234
235- (void)saltpackPromptForDecrypt:(KBRSaltpackPromptForDecryptRequestParams *)params completion:(void (^)(NSError *error))completion {
236  NSDictionary *rparams = @{@"sender": KBRValue(params.sender), @"usedDelegateUI": @(params.usedDelegateUI)};
237  [self.client sendRequestWithMethod:@"keybase.1.saltpackUi.saltpackPromptForDecrypt" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
238    completion(error);
239  }];
240}
241
242- (void)saltpackPromptForDecryptWithSender:(KBRSaltpackSender *)sender usedDelegateUI:(BOOL)usedDelegateUI completion:(void (^)(NSError *error))completion {
243  NSDictionary *rparams = @{@"sender": KBRValue(sender), @"usedDelegateUI": @(usedDelegateUI)};
244  [self.client sendRequestWithMethod:@"keybase.1.saltpackUi.saltpackPromptForDecrypt" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
245    completion(error);
246  }];
247}
248
249- (void)saltpackVerifySuccess:(KBRSaltpackVerifySuccessRequestParams *)params completion:(void (^)(NSError *error))completion {
250  NSDictionary *rparams = @{@"signingKID": KBRValue(params.signingKID), @"sender": KBRValue(params.sender)};
251  [self.client sendRequestWithMethod:@"keybase.1.saltpackUi.saltpackVerifySuccess" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
252    completion(error);
253  }];
254}
255
256- (void)saltpackVerifySuccessWithSigningKID:(NSString *)signingKID sender:(KBRSaltpackSender *)sender completion:(void (^)(NSError *error))completion {
257  NSDictionary *rparams = @{@"signingKID": KBRValue(signingKID), @"sender": KBRValue(sender)};
258  [self.client sendRequestWithMethod:@"keybase.1.saltpackUi.saltpackVerifySuccess" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
259    completion(error);
260  }];
261}
262
263@end
264
265@implementation KBRAccountRequest
266
267- (void)passphraseChange:(KBRPassphraseChangeRequestParams *)params completion:(void (^)(NSError *error))completion {
268  NSDictionary *rparams = @{@"oldPassphrase": KBRValue(params.oldPassphrase), @"passphrase": KBRValue(params.passphrase), @"force": @(params.force)};
269  [self.client sendRequestWithMethod:@"keybase.1.account.passphraseChange" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
270    completion(error);
271  }];
272}
273
274- (void)passphraseChangeWithOldPassphrase:(NSString *)oldPassphrase passphrase:(NSString *)passphrase force:(BOOL)force completion:(void (^)(NSError *error))completion {
275  NSDictionary *rparams = @{@"oldPassphrase": KBRValue(oldPassphrase), @"passphrase": KBRValue(passphrase), @"force": @(force)};
276  [self.client sendRequestWithMethod:@"keybase.1.account.passphraseChange" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
277    completion(error);
278  }];
279}
280
281- (void)passphrasePrompt:(KBRPassphrasePromptRequestParams *)params completion:(void (^)(NSError *error, KBRGetPassphraseRes *getPassphraseRes))completion {
282  NSDictionary *rparams = @{@"guiArg": KBRValue(params.guiArg)};
283  [self.client sendRequestWithMethod:@"keybase.1.account.passphrasePrompt" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
284    if (error) {
285      completion(error, nil);
286      return;
287    }
288    KBRGetPassphraseRes *result = retval ? [MTLJSONAdapter modelOfClass:KBRGetPassphraseRes.class fromJSONDictionary:retval error:&error] : nil;
289    completion(error, result);
290  }];
291}
292
293- (void)passphrasePromptWithGuiArg:(KBRGUIEntryArg *)guiArg completion:(void (^)(NSError *error, KBRGetPassphraseRes *getPassphraseRes))completion {
294  NSDictionary *rparams = @{@"guiArg": KBRValue(guiArg)};
295  [self.client sendRequestWithMethod:@"keybase.1.account.passphrasePrompt" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
296    if (error) {
297      completion(error, nil);
298      return;
299    }
300    KBRGetPassphraseRes *result = retval ? [MTLJSONAdapter modelOfClass:KBRGetPassphraseRes.class fromJSONDictionary:retval error:&error] : nil;
301    completion(error, result);
302  }];
303}
304
305- (void)emailChange:(KBREmailChangeRequestParams *)params completion:(void (^)(NSError *error))completion {
306  NSDictionary *rparams = @{@"newEmail": KBRValue(params.emailNew)};
307  [self.client sendRequestWithMethod:@"keybase.1.account.emailChange" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
308    completion(error);
309  }];
310}
311
312- (void)emailChangeWithEmailNew:(NSString *)emailNew completion:(void (^)(NSError *error))completion {
313  NSDictionary *rparams = @{@"newEmail": KBRValue(emailNew)};
314  [self.client sendRequestWithMethod:@"keybase.1.account.emailChange" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
315    completion(error);
316  }];
317}
318
319- (void)hasServerKeys:(void (^)(NSError *error, KBRHasServerKeysRes *hasServerKeysRes))completion {
320  NSDictionary *rparams = @{};
321  [self.client sendRequestWithMethod:@"keybase.1.account.hasServerKeys" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
322    if (error) {
323      completion(error, nil);
324      return;
325    }
326    KBRHasServerKeysRes *result = retval ? [MTLJSONAdapter modelOfClass:KBRHasServerKeysRes.class fromJSONDictionary:retval error:&error] : nil;
327    completion(error, result);
328  }];
329}
330
331@end
332
333@implementation KBRApiserverRequest
334
335- (void)get:(KBRGetRequestParams *)params completion:(void (^)(NSError *error, KBRAPIRes *aPIRes))completion {
336  NSDictionary *rparams = @{@"endpoint": KBRValue(params.endpoint), @"args": KBRValue(params.args), @"httpStatus": KBRValue(params.httpStatus), @"appStatusCode": KBRValue(params.appStatusCode)};
337  [self.client sendRequestWithMethod:@"keybase.1.apiserver.Get" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
338    if (error) {
339      completion(error, nil);
340      return;
341    }
342    KBRAPIRes *result = retval ? [MTLJSONAdapter modelOfClass:KBRAPIRes.class fromJSONDictionary:retval error:&error] : nil;
343    completion(error, result);
344  }];
345}
346
347- (void)getWithEndpoint:(NSString *)endpoint args:(NSArray *)args httpStatus:(NSArray *)httpStatus appStatusCode:(NSArray *)appStatusCode completion:(void (^)(NSError *error, KBRAPIRes *aPIRes))completion {
348  NSDictionary *rparams = @{@"endpoint": KBRValue(endpoint), @"args": KBRValue(args), @"httpStatus": KBRValue(httpStatus), @"appStatusCode": KBRValue(appStatusCode)};
349  [self.client sendRequestWithMethod:@"keybase.1.apiserver.Get" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
350    if (error) {
351      completion(error, nil);
352      return;
353    }
354    KBRAPIRes *result = retval ? [MTLJSONAdapter modelOfClass:KBRAPIRes.class fromJSONDictionary:retval error:&error] : nil;
355    completion(error, result);
356  }];
357}
358
359- (void)post:(KBRPostRequestParams *)params completion:(void (^)(NSError *error, KBRAPIRes *aPIRes))completion {
360  NSDictionary *rparams = @{@"endpoint": KBRValue(params.endpoint), @"args": KBRValue(params.args), @"httpStatus": KBRValue(params.httpStatus), @"appStatusCode": KBRValue(params.appStatusCode)};
361  [self.client sendRequestWithMethod:@"keybase.1.apiserver.Post" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
362    if (error) {
363      completion(error, nil);
364      return;
365    }
366    KBRAPIRes *result = retval ? [MTLJSONAdapter modelOfClass:KBRAPIRes.class fromJSONDictionary:retval error:&error] : nil;
367    completion(error, result);
368  }];
369}
370
371- (void)postWithEndpoint:(NSString *)endpoint args:(NSArray *)args httpStatus:(NSArray *)httpStatus appStatusCode:(NSArray *)appStatusCode completion:(void (^)(NSError *error, KBRAPIRes *aPIRes))completion {
372  NSDictionary *rparams = @{@"endpoint": KBRValue(endpoint), @"args": KBRValue(args), @"httpStatus": KBRValue(httpStatus), @"appStatusCode": KBRValue(appStatusCode)};
373  [self.client sendRequestWithMethod:@"keybase.1.apiserver.Post" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
374    if (error) {
375      completion(error, nil);
376      return;
377    }
378    KBRAPIRes *result = retval ? [MTLJSONAdapter modelOfClass:KBRAPIRes.class fromJSONDictionary:retval error:&error] : nil;
379    completion(error, result);
380  }];
381}
382
383- (void)postJSON:(KBRPostJSONRequestParams *)params completion:(void (^)(NSError *error, KBRAPIRes *aPIRes))completion {
384  NSDictionary *rparams = @{@"endpoint": KBRValue(params.endpoint), @"args": KBRValue(params.args), @"JSONPayload": KBRValue(params.JSONPayload), @"httpStatus": KBRValue(params.httpStatus), @"appStatusCode": KBRValue(params.appStatusCode)};
385  [self.client sendRequestWithMethod:@"keybase.1.apiserver.PostJSON" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
386    if (error) {
387      completion(error, nil);
388      return;
389    }
390    KBRAPIRes *result = retval ? [MTLJSONAdapter modelOfClass:KBRAPIRes.class fromJSONDictionary:retval error:&error] : nil;
391    completion(error, result);
392  }];
393}
394
395- (void)postJSONWithEndpoint:(NSString *)endpoint args:(NSArray *)args JSONPayload:(NSArray *)JSONPayload httpStatus:(NSArray *)httpStatus appStatusCode:(NSArray *)appStatusCode completion:(void (^)(NSError *error, KBRAPIRes *aPIRes))completion {
396  NSDictionary *rparams = @{@"endpoint": KBRValue(endpoint), @"args": KBRValue(args), @"JSONPayload": KBRValue(JSONPayload), @"httpStatus": KBRValue(httpStatus), @"appStatusCode": KBRValue(appStatusCode)};
397  [self.client sendRequestWithMethod:@"keybase.1.apiserver.PostJSON" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
398    if (error) {
399      completion(error, nil);
400      return;
401    }
402    KBRAPIRes *result = retval ? [MTLJSONAdapter modelOfClass:KBRAPIRes.class fromJSONDictionary:retval error:&error] : nil;
403    completion(error, result);
404  }];
405}
406
407@end
408
409@implementation KBRBackendCommonRequest
410
411@end
412
413@implementation KBRBlockRequest
414
415- (void)getSessionChallenge:(void (^)(NSError *error, KBRChallengeInfo *challengeInfo))completion {
416  NSDictionary *rparams = @{};
417  [self.client sendRequestWithMethod:@"keybase.1.block.getSessionChallenge" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
418    if (error) {
419      completion(error, nil);
420      return;
421    }
422    KBRChallengeInfo *result = retval ? [MTLJSONAdapter modelOfClass:KBRChallengeInfo.class fromJSONDictionary:retval error:&error] : nil;
423    completion(error, result);
424  }];
425}
426
427- (void)authenticateSession:(KBRAuthenticateSessionRequestParams *)params completion:(void (^)(NSError *error))completion {
428  NSDictionary *rparams = @{@"signature": KBRValue(params.signature)};
429  [self.client sendRequestWithMethod:@"keybase.1.block.authenticateSession" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
430    completion(error);
431  }];
432}
433
434- (void)authenticateSessionWithSignature:(NSString *)signature completion:(void (^)(NSError *error))completion {
435  NSDictionary *rparams = @{@"signature": KBRValue(signature)};
436  [self.client sendRequestWithMethod:@"keybase.1.block.authenticateSession" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
437    completion(error);
438  }];
439}
440
441- (void)putBlock:(KBRPutBlockRequestParams *)params completion:(void (^)(NSError *error))completion {
442  NSDictionary *rparams = @{@"bid": KBRValue(params.bid), @"folder": KBRValue(params.folder), @"blockKey": KBRValue(params.blockKey), @"buf": KBRValue(params.buf)};
443  [self.client sendRequestWithMethod:@"keybase.1.block.putBlock" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
444    completion(error);
445  }];
446}
447
448- (void)putBlockWithBid:(KBRBlockIdCombo *)bid folder:(NSString *)folder blockKey:(NSString *)blockKey buf:(NSData *)buf completion:(void (^)(NSError *error))completion {
449  NSDictionary *rparams = @{@"bid": KBRValue(bid), @"folder": KBRValue(folder), @"blockKey": KBRValue(blockKey), @"buf": KBRValue(buf)};
450  [self.client sendRequestWithMethod:@"keybase.1.block.putBlock" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
451    completion(error);
452  }];
453}
454
455- (void)getBlock:(KBRGetBlockRequestParams *)params completion:(void (^)(NSError *error, KBRGetBlockRes *getBlockRes))completion {
456  NSDictionary *rparams = @{@"bid": KBRValue(params.bid), @"folder": KBRValue(params.folder)};
457  [self.client sendRequestWithMethod:@"keybase.1.block.getBlock" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
458    if (error) {
459      completion(error, nil);
460      return;
461    }
462    KBRGetBlockRes *result = retval ? [MTLJSONAdapter modelOfClass:KBRGetBlockRes.class fromJSONDictionary:retval error:&error] : nil;
463    completion(error, result);
464  }];
465}
466
467- (void)getBlockWithBid:(KBRBlockIdCombo *)bid folder:(NSString *)folder completion:(void (^)(NSError *error, KBRGetBlockRes *getBlockRes))completion {
468  NSDictionary *rparams = @{@"bid": KBRValue(bid), @"folder": KBRValue(folder)};
469  [self.client sendRequestWithMethod:@"keybase.1.block.getBlock" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
470    if (error) {
471      completion(error, nil);
472      return;
473    }
474    KBRGetBlockRes *result = retval ? [MTLJSONAdapter modelOfClass:KBRGetBlockRes.class fromJSONDictionary:retval error:&error] : nil;
475    completion(error, result);
476  }];
477}
478
479- (void)addReference:(KBRAddReferenceRequestParams *)params completion:(void (^)(NSError *error))completion {
480  NSDictionary *rparams = @{@"folder": KBRValue(params.folder), @"ref": KBRValue(params.ref)};
481  [self.client sendRequestWithMethod:@"keybase.1.block.addReference" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
482    completion(error);
483  }];
484}
485
486- (void)addReferenceWithFolder:(NSString *)folder ref:(KBRBlockReference *)ref completion:(void (^)(NSError *error))completion {
487  NSDictionary *rparams = @{@"folder": KBRValue(folder), @"ref": KBRValue(ref)};
488  [self.client sendRequestWithMethod:@"keybase.1.block.addReference" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
489    completion(error);
490  }];
491}
492
493- (void)delReference:(KBRDelReferenceRequestParams *)params completion:(void (^)(NSError *error))completion {
494  NSDictionary *rparams = @{@"folder": KBRValue(params.folder), @"ref": KBRValue(params.ref)};
495  [self.client sendRequestWithMethod:@"keybase.1.block.delReference" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
496    completion(error);
497  }];
498}
499
500- (void)delReferenceWithFolder:(NSString *)folder ref:(KBRBlockReference *)ref completion:(void (^)(NSError *error))completion {
501  NSDictionary *rparams = @{@"folder": KBRValue(folder), @"ref": KBRValue(ref)};
502  [self.client sendRequestWithMethod:@"keybase.1.block.delReference" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
503    completion(error);
504  }];
505}
506
507- (void)archiveReference:(KBRArchiveReferenceRequestParams *)params completion:(void (^)(NSError *error, NSArray *items))completion {
508  NSDictionary *rparams = @{@"folder": KBRValue(params.folder), @"refs": KBRValue(params.refs)};
509  [self.client sendRequestWithMethod:@"keybase.1.block.archiveReference" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
510    if (error) {
511      completion(error, nil);
512      return;
513    }
514    NSArray *results = retval ? [MTLJSONAdapter modelsOfClass:KBRBlockReference.class fromJSONArray:retval error:&error] : nil;
515    completion(error, results);
516  }];
517}
518
519- (void)archiveReferenceWithFolder:(NSString *)folder refs:(NSArray *)refs completion:(void (^)(NSError *error, NSArray *items))completion {
520  NSDictionary *rparams = @{@"folder": KBRValue(folder), @"refs": KBRValue(refs)};
521  [self.client sendRequestWithMethod:@"keybase.1.block.archiveReference" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
522    if (error) {
523      completion(error, nil);
524      return;
525    }
526    NSArray *results = retval ? [MTLJSONAdapter modelsOfClass:KBRBlockReference.class fromJSONArray:retval error:&error] : nil;
527    completion(error, results);
528  }];
529}
530
531- (void)delReferenceWithCount:(KBRDelReferenceWithCountRequestParams *)params completion:(void (^)(NSError *error, KBRDowngradeReferenceRes *downgradeReferenceRes))completion {
532  NSDictionary *rparams = @{@"folder": KBRValue(params.folder), @"refs": KBRValue(params.refs)};
533  [self.client sendRequestWithMethod:@"keybase.1.block.delReferenceWithCount" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
534    if (error) {
535      completion(error, nil);
536      return;
537    }
538    KBRDowngradeReferenceRes *result = retval ? [MTLJSONAdapter modelOfClass:KBRDowngradeReferenceRes.class fromJSONDictionary:retval error:&error] : nil;
539    completion(error, result);
540  }];
541}
542
543- (void)delReferenceWithCountWithFolder:(NSString *)folder refs:(NSArray *)refs completion:(void (^)(NSError *error, KBRDowngradeReferenceRes *downgradeReferenceRes))completion {
544  NSDictionary *rparams = @{@"folder": KBRValue(folder), @"refs": KBRValue(refs)};
545  [self.client sendRequestWithMethod:@"keybase.1.block.delReferenceWithCount" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
546    if (error) {
547      completion(error, nil);
548      return;
549    }
550    KBRDowngradeReferenceRes *result = retval ? [MTLJSONAdapter modelOfClass:KBRDowngradeReferenceRes.class fromJSONDictionary:retval error:&error] : nil;
551    completion(error, result);
552  }];
553}
554
555- (void)archiveReferenceWithCount:(KBRArchiveReferenceWithCountRequestParams *)params completion:(void (^)(NSError *error, KBRDowngradeReferenceRes *downgradeReferenceRes))completion {
556  NSDictionary *rparams = @{@"folder": KBRValue(params.folder), @"refs": KBRValue(params.refs)};
557  [self.client sendRequestWithMethod:@"keybase.1.block.archiveReferenceWithCount" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
558    if (error) {
559      completion(error, nil);
560      return;
561    }
562    KBRDowngradeReferenceRes *result = retval ? [MTLJSONAdapter modelOfClass:KBRDowngradeReferenceRes.class fromJSONDictionary:retval error:&error] : nil;
563    completion(error, result);
564  }];
565}
566
567- (void)archiveReferenceWithCountWithFolder:(NSString *)folder refs:(NSArray *)refs completion:(void (^)(NSError *error, KBRDowngradeReferenceRes *downgradeReferenceRes))completion {
568  NSDictionary *rparams = @{@"folder": KBRValue(folder), @"refs": KBRValue(refs)};
569  [self.client sendRequestWithMethod:@"keybase.1.block.archiveReferenceWithCount" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
570    if (error) {
571      completion(error, nil);
572      return;
573    }
574    KBRDowngradeReferenceRes *result = retval ? [MTLJSONAdapter modelOfClass:KBRDowngradeReferenceRes.class fromJSONDictionary:retval error:&error] : nil;
575    completion(error, result);
576  }];
577}
578
579- (void)getUserQuotaInfo:(void (^)(NSError *error, NSData *bytes))completion {
580  NSDictionary *rparams = @{};
581  [self.client sendRequestWithMethod:@"keybase.1.block.getUserQuotaInfo" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
582    if (error) {
583      completion(error, nil);
584      return;
585    }
586    NSData *result = retval ? [MTLJSONAdapter modelOfClass:NSData.class fromJSONDictionary:retval error:&error] : nil;
587    completion(error, result);
588  }];
589}
590
591@end
592
593@implementation KBRBTCRequest
594
595- (void)registerBTC:(KBRRegisterBTCRequestParams *)params completion:(void (^)(NSError *error))completion {
596  NSDictionary *rparams = @{@"address": KBRValue(params.address), @"force": @(params.force)};
597  [self.client sendRequestWithMethod:@"keybase.1.BTC.registerBTC" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
598    completion(error);
599  }];
600}
601
602- (void)registerBTCWithAddress:(NSString *)address force:(BOOL)force completion:(void (^)(NSError *error))completion {
603  NSDictionary *rparams = @{@"address": KBRValue(address), @"force": @(force)};
604  [self.client sendRequestWithMethod:@"keybase.1.BTC.registerBTC" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
605    completion(error);
606  }];
607}
608
609@end
610
611@implementation KBRConfigRequest
612
613- (void)getCurrentStatus:(void (^)(NSError *error, KBRGetCurrentStatusRes *getCurrentStatusRes))completion {
614  NSDictionary *rparams = @{};
615  [self.client sendRequestWithMethod:@"keybase.1.config.getCurrentStatus" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
616    if (error) {
617      completion(error, nil);
618      return;
619    }
620    KBRGetCurrentStatusRes *result = retval ? [MTLJSONAdapter modelOfClass:KBRGetCurrentStatusRes.class fromJSONDictionary:retval error:&error] : nil;
621    completion(error, result);
622  }];
623}
624
625- (void)getExtendedStatus:(void (^)(NSError *error, KBRExtendedStatus *extendedStatus))completion {
626  NSDictionary *rparams = @{};
627  [self.client sendRequestWithMethod:@"keybase.1.config.getExtendedStatus" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
628    if (error) {
629      completion(error, nil);
630      return;
631    }
632    KBRExtendedStatus *result = retval ? [MTLJSONAdapter modelOfClass:KBRExtendedStatus.class fromJSONDictionary:retval error:&error] : nil;
633    completion(error, result);
634  }];
635}
636
637- (void)getConfig:(void (^)(NSError *error, KBRConfig *config))completion {
638  NSDictionary *rparams = @{};
639  [self.client sendRequestWithMethod:@"keybase.1.config.getConfig" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
640    if (error) {
641      completion(error, nil);
642      return;
643    }
644    KBRConfig *result = retval ? [MTLJSONAdapter modelOfClass:KBRConfig.class fromJSONDictionary:retval error:&error] : nil;
645    completion(error, result);
646  }];
647}
648
649- (void)setUserConfig:(KBRSetUserConfigRequestParams *)params completion:(void (^)(NSError *error))completion {
650  NSDictionary *rparams = @{@"username": KBRValue(params.username), @"key": KBRValue(params.key), @"value": KBRValue(params.value)};
651  [self.client sendRequestWithMethod:@"keybase.1.config.setUserConfig" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
652    completion(error);
653  }];
654}
655
656- (void)setUserConfigWithUsername:(NSString *)username key:(NSString *)key value:(NSString *)value completion:(void (^)(NSError *error))completion {
657  NSDictionary *rparams = @{@"username": KBRValue(username), @"key": KBRValue(key), @"value": KBRValue(value)};
658  [self.client sendRequestWithMethod:@"keybase.1.config.setUserConfig" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
659    completion(error);
660  }];
661}
662
663- (void)setPath:(KBRSetPathRequestParams *)params completion:(void (^)(NSError *error))completion {
664  NSDictionary *rparams = @{@"path": KBRValue(params.path)};
665  [self.client sendRequestWithMethod:@"keybase.1.config.setPath" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
666    completion(error);
667  }];
668}
669
670- (void)setPathWithPath:(NSString *)path completion:(void (^)(NSError *error))completion {
671  NSDictionary *rparams = @{@"path": KBRValue(path)};
672  [self.client sendRequestWithMethod:@"keybase.1.config.setPath" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
673    completion(error);
674  }];
675}
676
677- (void)helloIAm:(KBRHelloIAmRequestParams *)params completion:(void (^)(NSError *error))completion {
678  NSDictionary *rparams = @{@"details": KBRValue(params.details)};
679  [self.client sendRequestWithMethod:@"keybase.1.config.helloIAm" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
680    completion(error);
681  }];
682}
683
684- (void)helloIAmWithDetails:(KBRClientDetails *)details completion:(void (^)(NSError *error))completion {
685  NSDictionary *rparams = @{@"details": KBRValue(details)};
686  [self.client sendRequestWithMethod:@"keybase.1.config.helloIAm" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
687    completion(error);
688  }];
689}
690
691- (void)setValue:(KBRSetValueRequestParams *)params completion:(void (^)(NSError *error))completion {
692  NSDictionary *rparams = @{@"path": KBRValue(params.path), @"value": KBRValue(params.value)};
693  [self.client sendRequestWithMethod:@"keybase.1.config.setValue" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
694    completion(error);
695  }];
696}
697
698- (void)setValueWithPath:(NSString *)path value:(KBRConfigValue *)value completion:(void (^)(NSError *error))completion {
699  NSDictionary *rparams = @{@"path": KBRValue(path), @"value": KBRValue(value)};
700  [self.client sendRequestWithMethod:@"keybase.1.config.setValue" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
701    completion(error);
702  }];
703}
704
705- (void)clearValue:(KBRClearValueRequestParams *)params completion:(void (^)(NSError *error))completion {
706  NSDictionary *rparams = @{@"path": KBRValue(params.path)};
707  [self.client sendRequestWithMethod:@"keybase.1.config.clearValue" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
708    completion(error);
709  }];
710}
711
712- (void)clearValueWithPath:(NSString *)path completion:(void (^)(NSError *error))completion {
713  NSDictionary *rparams = @{@"path": KBRValue(path)};
714  [self.client sendRequestWithMethod:@"keybase.1.config.clearValue" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
715    completion(error);
716  }];
717}
718
719- (void)getValue:(KBRGetValueRequestParams *)params completion:(void (^)(NSError *error, KBRConfigValue *configValue))completion {
720  NSDictionary *rparams = @{@"path": KBRValue(params.path)};
721  [self.client sendRequestWithMethod:@"keybase.1.config.getValue" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
722    if (error) {
723      completion(error, nil);
724      return;
725    }
726    KBRConfigValue *result = retval ? [MTLJSONAdapter modelOfClass:KBRConfigValue.class fromJSONDictionary:retval error:&error] : nil;
727    completion(error, result);
728  }];
729}
730
731- (void)getValueWithPath:(NSString *)path completion:(void (^)(NSError *error, KBRConfigValue *configValue))completion {
732  NSDictionary *rparams = @{@"path": KBRValue(path)};
733  [self.client sendRequestWithMethod:@"keybase.1.config.getValue" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
734    if (error) {
735      completion(error, nil);
736      return;
737    }
738    KBRConfigValue *result = retval ? [MTLJSONAdapter modelOfClass:KBRConfigValue.class fromJSONDictionary:retval error:&error] : nil;
739    completion(error, result);
740  }];
741}
742
743- (void)checkAPIServerOutOfDateWarning:(void (^)(NSError *error, KBROutOfDateInfo *outOfDateInfo))completion {
744  NSDictionary *rparams = @{};
745  [self.client sendRequestWithMethod:@"keybase.1.config.checkAPIServerOutOfDateWarning" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
746    if (error) {
747      completion(error, nil);
748      return;
749    }
750    KBROutOfDateInfo *result = retval ? [MTLJSONAdapter modelOfClass:KBROutOfDateInfo.class fromJSONDictionary:retval error:&error] : nil;
751    completion(error, result);
752  }];
753}
754
755- (void)waitForClient:(KBRWaitForClientRequestParams *)params completion:(void (^)(NSError *error, BOOL b))completion {
756  NSDictionary *rparams = @{@"clientType": @(params.clientType), @"timeout": @(params.timeout)};
757  [self.client sendRequestWithMethod:@"keybase.1.config.waitForClient" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
758    completion(error, 0);
759  }];
760}
761
762- (void)waitForClientWithClientType:(KBRClientType)clientType timeout:(double)timeout completion:(void (^)(NSError *error, BOOL b))completion {
763  NSDictionary *rparams = @{@"clientType": @(clientType), @"timeout": @(timeout)};
764  [self.client sendRequestWithMethod:@"keybase.1.config.waitForClient" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
765    completion(error, 0);
766  }];
767}
768
769@end
770
771@implementation KBRConstantsRequest
772
773@end
774
775@implementation KBRCryptoRequest
776
777- (void)signED25519:(KBRSignED25519RequestParams *)params completion:(void (^)(NSError *error, KBRED25519SignatureInfo *eD25519SignatureInfo))completion {
778  NSDictionary *rparams = @{@"msg": KBRValue(params.msg), @"reason": KBRValue(params.reason)};
779  [self.client sendRequestWithMethod:@"keybase.1.crypto.signED25519" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
780    if (error) {
781      completion(error, nil);
782      return;
783    }
784    KBRED25519SignatureInfo *result = retval ? [MTLJSONAdapter modelOfClass:KBRED25519SignatureInfo.class fromJSONDictionary:retval error:&error] : nil;
785    completion(error, result);
786  }];
787}
788
789- (void)signED25519WithMsg:(NSData *)msg reason:(NSString *)reason completion:(void (^)(NSError *error, KBRED25519SignatureInfo *eD25519SignatureInfo))completion {
790  NSDictionary *rparams = @{@"msg": KBRValue(msg), @"reason": KBRValue(reason)};
791  [self.client sendRequestWithMethod:@"keybase.1.crypto.signED25519" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
792    if (error) {
793      completion(error, nil);
794      return;
795    }
796    KBRED25519SignatureInfo *result = retval ? [MTLJSONAdapter modelOfClass:KBRED25519SignatureInfo.class fromJSONDictionary:retval error:&error] : nil;
797    completion(error, result);
798  }];
799}
800
801- (void)signED25519ForKBFS:(KBRSignED25519ForKBFSRequestParams *)params completion:(void (^)(NSError *error, KBRED25519SignatureInfo *eD25519SignatureInfo))completion {
802  NSDictionary *rparams = @{@"msg": KBRValue(params.msg), @"reason": KBRValue(params.reason)};
803  [self.client sendRequestWithMethod:@"keybase.1.crypto.signED25519ForKBFS" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
804    if (error) {
805      completion(error, nil);
806      return;
807    }
808    KBRED25519SignatureInfo *result = retval ? [MTLJSONAdapter modelOfClass:KBRED25519SignatureInfo.class fromJSONDictionary:retval error:&error] : nil;
809    completion(error, result);
810  }];
811}
812
813- (void)signED25519ForKBFSWithMsg:(NSData *)msg reason:(NSString *)reason completion:(void (^)(NSError *error, KBRED25519SignatureInfo *eD25519SignatureInfo))completion {
814  NSDictionary *rparams = @{@"msg": KBRValue(msg), @"reason": KBRValue(reason)};
815  [self.client sendRequestWithMethod:@"keybase.1.crypto.signED25519ForKBFS" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
816    if (error) {
817      completion(error, nil);
818      return;
819    }
820    KBRED25519SignatureInfo *result = retval ? [MTLJSONAdapter modelOfClass:KBRED25519SignatureInfo.class fromJSONDictionary:retval error:&error] : nil;
821    completion(error, result);
822  }];
823}
824
825- (void)signToString:(KBRSignToStringRequestParams *)params completion:(void (^)(NSError *error, NSString *str))completion {
826  NSDictionary *rparams = @{@"msg": KBRValue(params.msg), @"reason": KBRValue(params.reason)};
827  [self.client sendRequestWithMethod:@"keybase.1.crypto.signToString" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
828    if (error) {
829      completion(error, nil);
830      return;
831    }
832    NSString *result = retval ? [MTLJSONAdapter modelOfClass:NSString.class fromJSONDictionary:retval error:&error] : nil;
833    completion(error, result);
834  }];
835}
836
837- (void)signToStringWithMsg:(NSData *)msg reason:(NSString *)reason completion:(void (^)(NSError *error, NSString *str))completion {
838  NSDictionary *rparams = @{@"msg": KBRValue(msg), @"reason": KBRValue(reason)};
839  [self.client sendRequestWithMethod:@"keybase.1.crypto.signToString" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
840    if (error) {
841      completion(error, nil);
842      return;
843    }
844    NSString *result = retval ? [MTLJSONAdapter modelOfClass:NSString.class fromJSONDictionary:retval error:&error] : nil;
845    completion(error, result);
846  }];
847}
848
849- (void)unboxBytes32:(KBRUnboxBytes32RequestParams *)params completion:(void (^)(NSError *error, NSData *bytes32))completion {
850  NSDictionary *rparams = @{@"encryptedBytes32": KBRValue(params.encryptedBytes32), @"nonce": KBRValue(params.nonce), @"peersPublicKey": KBRValue(params.peersPublicKey), @"reason": KBRValue(params.reason)};
851  [self.client sendRequestWithMethod:@"keybase.1.crypto.unboxBytes32" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
852    if (error) {
853      completion(error, nil);
854      return;
855    }
856    NSData *result = retval ? [MTLJSONAdapter modelOfClass:NSData.class fromJSONDictionary:retval error:&error] : nil;
857    completion(error, result);
858  }];
859}
860
861- (void)unboxBytes32WithEncryptedBytes32:(NSData *)encryptedBytes32 nonce:(NSData *)nonce peersPublicKey:(NSData *)peersPublicKey reason:(NSString *)reason completion:(void (^)(NSError *error, NSData *bytes32))completion {
862  NSDictionary *rparams = @{@"encryptedBytes32": KBRValue(encryptedBytes32), @"nonce": KBRValue(nonce), @"peersPublicKey": KBRValue(peersPublicKey), @"reason": KBRValue(reason)};
863  [self.client sendRequestWithMethod:@"keybase.1.crypto.unboxBytes32" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
864    if (error) {
865      completion(error, nil);
866      return;
867    }
868    NSData *result = retval ? [MTLJSONAdapter modelOfClass:NSData.class fromJSONDictionary:retval error:&error] : nil;
869    completion(error, result);
870  }];
871}
872
873- (void)unboxBytes32Any:(KBRUnboxBytes32AnyRequestParams *)params completion:(void (^)(NSError *error, KBRUnboxAnyRes *unboxAnyRes))completion {
874  NSDictionary *rparams = @{@"bundles": KBRValue(params.bundles), @"reason": KBRValue(params.reason), @"promptPaper": @(params.promptPaper)};
875  [self.client sendRequestWithMethod:@"keybase.1.crypto.unboxBytes32Any" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
876    if (error) {
877      completion(error, nil);
878      return;
879    }
880    KBRUnboxAnyRes *result = retval ? [MTLJSONAdapter modelOfClass:KBRUnboxAnyRes.class fromJSONDictionary:retval error:&error] : nil;
881    completion(error, result);
882  }];
883}
884
885- (void)unboxBytes32AnyWithBundles:(NSArray *)bundles reason:(NSString *)reason promptPaper:(BOOL)promptPaper completion:(void (^)(NSError *error, KBRUnboxAnyRes *unboxAnyRes))completion {
886  NSDictionary *rparams = @{@"bundles": KBRValue(bundles), @"reason": KBRValue(reason), @"promptPaper": @(promptPaper)};
887  [self.client sendRequestWithMethod:@"keybase.1.crypto.unboxBytes32Any" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
888    if (error) {
889      completion(error, nil);
890      return;
891    }
892    KBRUnboxAnyRes *result = retval ? [MTLJSONAdapter modelOfClass:KBRUnboxAnyRes.class fromJSONDictionary:retval error:&error] : nil;
893    completion(error, result);
894  }];
895}
896
897@end
898
899@implementation KBRCryptocurrencyRequest
900
901- (void)registerAddress:(KBRRegisterAddressRequestParams *)params completion:(void (^)(NSError *error, KBRRegisterAddressRes *registerAddressRes))completion {
902  NSDictionary *rparams = @{@"address": KBRValue(params.address), @"force": @(params.force), @"wantedFamily": KBRValue(params.wantedFamily)};
903  [self.client sendRequestWithMethod:@"keybase.1.cryptocurrency.registerAddress" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
904    if (error) {
905      completion(error, nil);
906      return;
907    }
908    KBRRegisterAddressRes *result = retval ? [MTLJSONAdapter modelOfClass:KBRRegisterAddressRes.class fromJSONDictionary:retval error:&error] : nil;
909    completion(error, result);
910  }];
911}
912
913- (void)registerAddressWithAddress:(NSString *)address force:(BOOL)force wantedFamily:(NSString *)wantedFamily completion:(void (^)(NSError *error, KBRRegisterAddressRes *registerAddressRes))completion {
914  NSDictionary *rparams = @{@"address": KBRValue(address), @"force": @(force), @"wantedFamily": KBRValue(wantedFamily)};
915  [self.client sendRequestWithMethod:@"keybase.1.cryptocurrency.registerAddress" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
916    if (error) {
917      completion(error, nil);
918      return;
919    }
920    KBRRegisterAddressRes *result = retval ? [MTLJSONAdapter modelOfClass:KBRRegisterAddressRes.class fromJSONDictionary:retval error:&error] : nil;
921    completion(error, result);
922  }];
923}
924
925@end
926
927@implementation KBRCtlRequest
928
929- (void)stop:(KBRStopRequestParams *)params completion:(void (^)(NSError *error))completion {
930  NSDictionary *rparams = @{@"exitCode": @(params.exitCode)};
931  [self.client sendRequestWithMethod:@"keybase.1.ctl.stop" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
932    completion(error);
933  }];
934}
935
936- (void)stopWithExitCode:(KBRExitCode)exitCode completion:(void (^)(NSError *error))completion {
937  NSDictionary *rparams = @{@"exitCode": @(exitCode)};
938  [self.client sendRequestWithMethod:@"keybase.1.ctl.stop" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
939    completion(error);
940  }];
941}
942
943- (void)logRotate:(void (^)(NSError *error))completion {
944  NSDictionary *rparams = @{};
945  [self.client sendRequestWithMethod:@"keybase.1.ctl.logRotate" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
946    completion(error);
947  }];
948}
949
950- (void)reload:(void (^)(NSError *error))completion {
951  NSDictionary *rparams = @{};
952  [self.client sendRequestWithMethod:@"keybase.1.ctl.reload" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
953    completion(error);
954  }];
955}
956
957- (void)dbNuke:(void (^)(NSError *error))completion {
958  NSDictionary *rparams = @{};
959  [self.client sendRequestWithMethod:@"keybase.1.ctl.dbNuke" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
960    completion(error);
961  }];
962}
963
964- (void)appExit:(void (^)(NSError *error))completion {
965  NSDictionary *rparams = @{};
966  [self.client sendRequestWithMethod:@"keybase.1.ctl.appExit" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
967    completion(error);
968  }];
969}
970
971@end
972
973@implementation KBRDebuggingRequest
974
975- (void)firstStep:(KBRFirstStepRequestParams *)params completion:(void (^)(NSError *error, KBRFirstStepResult *firstStepResult))completion {
976  NSDictionary *rparams = @{@"val": @(params.val)};
977  [self.client sendRequestWithMethod:@"keybase.1.debugging.firstStep" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
978    if (error) {
979      completion(error, nil);
980      return;
981    }
982    KBRFirstStepResult *result = retval ? [MTLJSONAdapter modelOfClass:KBRFirstStepResult.class fromJSONDictionary:retval error:&error] : nil;
983    completion(error, result);
984  }];
985}
986
987- (void)firstStepWithVal:(NSInteger)val completion:(void (^)(NSError *error, KBRFirstStepResult *firstStepResult))completion {
988  NSDictionary *rparams = @{@"val": @(val)};
989  [self.client sendRequestWithMethod:@"keybase.1.debugging.firstStep" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
990    if (error) {
991      completion(error, nil);
992      return;
993    }
994    KBRFirstStepResult *result = retval ? [MTLJSONAdapter modelOfClass:KBRFirstStepResult.class fromJSONDictionary:retval error:&error] : nil;
995    completion(error, result);
996  }];
997}
998
999- (void)secondStep:(KBRSecondStepRequestParams *)params completion:(void (^)(NSError *error, NSInteger n))completion {
1000  NSDictionary *rparams = @{@"val": @(params.val)};
1001  [self.client sendRequestWithMethod:@"keybase.1.debugging.secondStep" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
1002    completion(error, 0);
1003  }];
1004}
1005
1006- (void)secondStepWithVal:(NSInteger)val completion:(void (^)(NSError *error, NSInteger n))completion {
1007  NSDictionary *rparams = @{@"val": @(val)};
1008  [self.client sendRequestWithMethod:@"keybase.1.debugging.secondStep" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
1009    completion(error, 0);
1010  }];
1011}
1012
1013- (void)increment:(KBRIncrementRequestParams *)params completion:(void (^)(NSError *error, NSInteger n))completion {
1014  NSDictionary *rparams = @{@"val": @(params.val)};
1015  [self.client sendRequestWithMethod:@"keybase.1.debugging.increment" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
1016    completion(error, 0);
1017  }];
1018}
1019
1020- (void)incrementWithVal:(NSInteger)val completion:(void (^)(NSError *error, NSInteger n))completion {
1021  NSDictionary *rparams = @{@"val": @(val)};
1022  [self.client sendRequestWithMethod:@"keybase.1.debugging.increment" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
1023    completion(error, 0);
1024  }];
1025}
1026
1027@end
1028
1029@implementation KBRDelegateUiCtlRequest
1030
1031- (void)registerIdentifyUI:(void (^)(NSError *error))completion {
1032  NSDictionary *rparams = @{};
1033  [self.client sendRequestWithMethod:@"keybase.1.delegateUiCtl.registerIdentifyUI" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
1034    completion(error);
1035  }];
1036}
1037
1038- (void)registerSecretUI:(void (^)(NSError *error))completion {
1039  NSDictionary *rparams = @{};
1040  [self.client sendRequestWithMethod:@"keybase.1.delegateUiCtl.registerSecretUI" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
1041    completion(error);
1042  }];
1043}
1044
1045- (void)registerUpdateUI:(void (^)(NSError *error))completion {
1046  NSDictionary *rparams = @{};
1047  [self.client sendRequestWithMethod:@"keybase.1.delegateUiCtl.registerUpdateUI" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
1048    completion(error);
1049  }];
1050}
1051
1052- (void)registerRekeyUI:(void (^)(NSError *error))completion {
1053  NSDictionary *rparams = @{};
1054  [self.client sendRequestWithMethod:@"keybase.1.delegateUiCtl.registerRekeyUI" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
1055    completion(error);
1056  }];
1057}
1058
1059- (void)registerGregorFirehose:(void (^)(NSError *error))completion {
1060  NSDictionary *rparams = @{};
1061  [self.client sendRequestWithMethod:@"keybase.1.delegateUiCtl.registerGregorFirehose" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
1062    completion(error);
1063  }];
1064}
1065
1066@end
1067
1068@implementation KBRDeviceRequest
1069
1070- (void)deviceList:(void (^)(NSError *error, NSArray *items))completion {
1071  NSDictionary *rparams = @{};
1072  [self.client sendRequestWithMethod:@"keybase.1.device.deviceList" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
1073    if (error) {
1074      completion(error, nil);
1075      return;
1076    }
1077    NSArray *results = retval ? [MTLJSONAdapter modelsOfClass:KBRDevice.class fromJSONArray:retval error:&error] : nil;
1078    completion(error, results);
1079  }];
1080}
1081
1082- (void)deviceHistoryList:(void (^)(NSError *error, NSArray *items))completion {
1083  NSDictionary *rparams = @{};
1084  [self.client sendRequestWithMethod:@"keybase.1.device.deviceHistoryList" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
1085    if (error) {
1086      completion(error, nil);
1087      return;
1088    }
1089    NSArray *results = retval ? [MTLJSONAdapter modelsOfClass:KBRDeviceDetail.class fromJSONArray:retval error:&error] : nil;
1090    completion(error, results);
1091  }];
1092}
1093
1094- (void)deviceAdd:(void (^)(NSError *error))completion {
1095  NSDictionary *rparams = @{};
1096  [self.client sendRequestWithMethod:@"keybase.1.device.deviceAdd" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
1097    completion(error);
1098  }];
1099}
1100
1101- (void)checkDeviceNameFormat:(KBRCheckDeviceNameFormatRequestParams *)params completion:(void (^)(NSError *error, BOOL b))completion {
1102  NSDictionary *rparams = @{@"name": KBRValue(params.name)};
1103  [self.client sendRequestWithMethod:@"keybase.1.device.checkDeviceNameFormat" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
1104    completion(error, 0);
1105  }];
1106}
1107
1108- (void)checkDeviceNameFormatWithName:(NSString *)name completion:(void (^)(NSError *error, BOOL b))completion {
1109  NSDictionary *rparams = @{@"name": KBRValue(name)};
1110  [self.client sendRequestWithMethod:@"keybase.1.device.checkDeviceNameFormat" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
1111    completion(error, 0);
1112  }];
1113}
1114
1115- (void)checkDeviceNameForUser:(KBRCheckDeviceNameForUserRequestParams *)params completion:(void (^)(NSError *error))completion {
1116  NSDictionary *rparams = @{@"username": KBRValue(params.username), @"devicename": KBRValue(params.devicename)};
1117  [self.client sendRequestWithMethod:@"keybase.1.device.checkDeviceNameForUser" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
1118    completion(error);
1119  }];
1120}
1121
1122- (void)checkDeviceNameForUserWithUsername:(NSString *)username devicename:(NSString *)devicename completion:(void (^)(NSError *error))completion {
1123  NSDictionary *rparams = @{@"username": KBRValue(username), @"devicename": KBRValue(devicename)};
1124  [self.client sendRequestWithMethod:@"keybase.1.device.checkDeviceNameForUser" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
1125    completion(error);
1126  }];
1127}
1128
1129@end
1130
1131@implementation KBRFavoriteRequest
1132
1133- (void)favoriteAdd:(KBRFavoriteAddRequestParams *)params completion:(void (^)(NSError *error))completion {
1134  NSDictionary *rparams = @{@"folder": KBRValue(params.folder)};
1135  [self.client sendRequestWithMethod:@"keybase.1.favorite.favoriteAdd" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
1136    completion(error);
1137  }];
1138}
1139
1140- (void)favoriteAddWithFolder:(KBRFolder *)folder completion:(void (^)(NSError *error))completion {
1141  NSDictionary *rparams = @{@"folder": KBRValue(folder)};
1142  [self.client sendRequestWithMethod:@"keybase.1.favorite.favoriteAdd" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
1143    completion(error);
1144  }];
1145}
1146
1147- (void)favoriteIgnore:(KBRFavoriteIgnoreRequestParams *)params completion:(void (^)(NSError *error))completion {
1148  NSDictionary *rparams = @{@"folder": KBRValue(params.folder)};
1149  [self.client sendRequestWithMethod:@"keybase.1.favorite.favoriteIgnore" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
1150    completion(error);
1151  }];
1152}
1153
1154- (void)favoriteIgnoreWithFolder:(KBRFolder *)folder completion:(void (^)(NSError *error))completion {
1155  NSDictionary *rparams = @{@"folder": KBRValue(folder)};
1156  [self.client sendRequestWithMethod:@"keybase.1.favorite.favoriteIgnore" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
1157    completion(error);
1158  }];
1159}
1160
1161- (void)getFavorites:(void (^)(NSError *error, KBRFavoritesResult *favoritesResult))completion {
1162  NSDictionary *rparams = @{};
1163  [self.client sendRequestWithMethod:@"keybase.1.favorite.getFavorites" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
1164    if (error) {
1165      completion(error, nil);
1166      return;
1167    }
1168    KBRFavoritesResult *result = retval ? [MTLJSONAdapter modelOfClass:KBRFavoritesResult.class fromJSONDictionary:retval error:&error] : nil;
1169    completion(error, result);
1170  }];
1171}
1172
1173@end
1174
1175@implementation KBRFsRequest
1176
1177- (void)list:(KBRListRequestParams *)params completion:(void (^)(NSError *error, KBRListResult *listResult))completion {
1178  NSDictionary *rparams = @{@"path": KBRValue(params.path)};
1179  [self.client sendRequestWithMethod:@"keybase.1.fs.List" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
1180    if (error) {
1181      completion(error, nil);
1182      return;
1183    }
1184    KBRListResult *result = retval ? [MTLJSONAdapter modelOfClass:KBRListResult.class fromJSONDictionary:retval error:&error] : nil;
1185    completion(error, result);
1186  }];
1187}
1188
1189- (void)listWithPath:(NSString *)path completion:(void (^)(NSError *error, KBRListResult *listResult))completion {
1190  NSDictionary *rparams = @{@"path": KBRValue(path)};
1191  [self.client sendRequestWithMethod:@"keybase.1.fs.List" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
1192    if (error) {
1193      completion(error, nil);
1194      return;
1195    }
1196    KBRListResult *result = retval ? [MTLJSONAdapter modelOfClass:KBRListResult.class fromJSONDictionary:retval error:&error] : nil;
1197    completion(error, result);
1198  }];
1199}
1200
1201@end
1202
1203@implementation KBRGpgCommonRequest
1204
1205@end
1206
1207@implementation KBRGpgUiRequest
1208
1209- (void)wantToAddGPGKey:(void (^)(NSError *error, BOOL b))completion {
1210  NSDictionary *rparams = @{};
1211  [self.client sendRequestWithMethod:@"keybase.1.gpgUi.wantToAddGPGKey" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
1212    completion(error, 0);
1213  }];
1214}
1215
1216- (void)confirmDuplicateKeyChosen:(void (^)(NSError *error, BOOL b))completion {
1217  NSDictionary *rparams = @{};
1218  [self.client sendRequestWithMethod:@"keybase.1.gpgUi.confirmDuplicateKeyChosen" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
1219    completion(error, 0);
1220  }];
1221}
1222
1223- (void)selectKeyAndPushOption:(KBRSelectKeyAndPushOptionRequestParams *)params completion:(void (^)(NSError *error, KBRSelectKeyRes *selectKeyRes))completion {
1224  NSDictionary *rparams = @{@"keys": KBRValue(params.keys)};
1225  [self.client sendRequestWithMethod:@"keybase.1.gpgUi.selectKeyAndPushOption" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
1226    if (error) {
1227      completion(error, nil);
1228      return;
1229    }
1230    KBRSelectKeyRes *result = retval ? [MTLJSONAdapter modelOfClass:KBRSelectKeyRes.class fromJSONDictionary:retval error:&error] : nil;
1231    completion(error, result);
1232  }];
1233}
1234
1235- (void)selectKeyAndPushOptionWithKeys:(NSArray *)keys completion:(void (^)(NSError *error, KBRSelectKeyRes *selectKeyRes))completion {
1236  NSDictionary *rparams = @{@"keys": KBRValue(keys)};
1237  [self.client sendRequestWithMethod:@"keybase.1.gpgUi.selectKeyAndPushOption" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
1238    if (error) {
1239      completion(error, nil);
1240      return;
1241    }
1242    KBRSelectKeyRes *result = retval ? [MTLJSONAdapter modelOfClass:KBRSelectKeyRes.class fromJSONDictionary:retval error:&error] : nil;
1243    completion(error, result);
1244  }];
1245}
1246
1247- (void)selectKey:(KBRSelectKeyRequestParams *)params completion:(void (^)(NSError *error, NSString *str))completion {
1248  NSDictionary *rparams = @{@"keys": KBRValue(params.keys)};
1249  [self.client sendRequestWithMethod:@"keybase.1.gpgUi.selectKey" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
1250    if (error) {
1251      completion(error, nil);
1252      return;
1253    }
1254    NSString *result = retval ? [MTLJSONAdapter modelOfClass:NSString.class fromJSONDictionary:retval error:&error] : nil;
1255    completion(error, result);
1256  }];
1257}
1258
1259- (void)selectKeyWithKeys:(NSArray *)keys completion:(void (^)(NSError *error, NSString *str))completion {
1260  NSDictionary *rparams = @{@"keys": KBRValue(keys)};
1261  [self.client sendRequestWithMethod:@"keybase.1.gpgUi.selectKey" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
1262    if (error) {
1263      completion(error, nil);
1264      return;
1265    }
1266    NSString *result = retval ? [MTLJSONAdapter modelOfClass:NSString.class fromJSONDictionary:retval error:&error] : nil;
1267    completion(error, result);
1268  }];
1269}
1270
1271- (void)sign:(KBRSignRequestParams *)params completion:(void (^)(NSError *error, NSString *str))completion {
1272  NSDictionary *rparams = @{@"msg": KBRValue(params.msg), @"fingerprint": KBRValue(params.fingerprint)};
1273  [self.client sendRequestWithMethod:@"keybase.1.gpgUi.sign" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
1274    if (error) {
1275      completion(error, nil);
1276      return;
1277    }
1278    NSString *result = retval ? [MTLJSONAdapter modelOfClass:NSString.class fromJSONDictionary:retval error:&error] : nil;
1279    completion(error, result);
1280  }];
1281}
1282
1283- (void)signWithMsg:(NSData *)msg fingerprint:(NSData *)fingerprint completion:(void (^)(NSError *error, NSString *str))completion {
1284  NSDictionary *rparams = @{@"msg": KBRValue(msg), @"fingerprint": KBRValue(fingerprint)};
1285  [self.client sendRequestWithMethod:@"keybase.1.gpgUi.sign" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
1286    if (error) {
1287      completion(error, nil);
1288      return;
1289    }
1290    NSString *result = retval ? [MTLJSONAdapter modelOfClass:NSString.class fromJSONDictionary:retval error:&error] : nil;
1291    completion(error, result);
1292  }];
1293}
1294
1295- (void)getTTY:(void (^)(NSError *error, NSString *str))completion {
1296  NSDictionary *rparams = @{};
1297  [self.client sendRequestWithMethod:@"keybase.1.gpgUi.getTTY" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
1298    if (error) {
1299      completion(error, nil);
1300      return;
1301    }
1302    NSString *result = retval ? [MTLJSONAdapter modelOfClass:NSString.class fromJSONDictionary:retval error:&error] : nil;
1303    completion(error, result);
1304  }];
1305}
1306
1307@end
1308
1309@implementation KBRIdentifyRequest
1310
1311- (void)resolve:(KBRResolveRequestParams *)params completion:(void (^)(NSError *error, NSString *uID))completion {
1312  NSDictionary *rparams = @{@"assertion": KBRValue(params.assertion)};
1313  [self.client sendRequestWithMethod:@"keybase.1.identify.Resolve" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
1314    if (error) {
1315      completion(error, nil);
1316      return;
1317    }
1318    NSString *result = retval ? [MTLJSONAdapter modelOfClass:NSString.class fromJSONDictionary:retval error:&error] : nil;
1319    completion(error, result);
1320  }];
1321}
1322
1323- (void)resolveWithAssertion:(NSString *)assertion completion:(void (^)(NSError *error, NSString *uID))completion {
1324  NSDictionary *rparams = @{@"assertion": KBRValue(assertion)};
1325  [self.client sendRequestWithMethod:@"keybase.1.identify.Resolve" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
1326    if (error) {
1327      completion(error, nil);
1328      return;
1329    }
1330    NSString *result = retval ? [MTLJSONAdapter modelOfClass:NSString.class fromJSONDictionary:retval error:&error] : nil;
1331    completion(error, result);
1332  }];
1333}
1334
1335- (void)resolve2:(KBRResolve2RequestParams *)params completion:(void (^)(NSError *error, KBRUser *user))completion {
1336  NSDictionary *rparams = @{@"assertion": KBRValue(params.assertion)};
1337  [self.client sendRequestWithMethod:@"keybase.1.identify.Resolve2" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
1338    if (error) {
1339      completion(error, nil);
1340      return;
1341    }
1342    KBRUser *result = retval ? [MTLJSONAdapter modelOfClass:KBRUser.class fromJSONDictionary:retval error:&error] : nil;
1343    completion(error, result);
1344  }];
1345}
1346
1347- (void)resolve2WithAssertion:(NSString *)assertion completion:(void (^)(NSError *error, KBRUser *user))completion {
1348  NSDictionary *rparams = @{@"assertion": KBRValue(assertion)};
1349  [self.client sendRequestWithMethod:@"keybase.1.identify.Resolve2" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
1350    if (error) {
1351      completion(error, nil);
1352      return;
1353    }
1354    KBRUser *result = retval ? [MTLJSONAdapter modelOfClass:KBRUser.class fromJSONDictionary:retval error:&error] : nil;
1355    completion(error, result);
1356  }];
1357}
1358
1359- (void)identify:(KBRIdentifyRequestParams *)params completion:(void (^)(NSError *error, KBRIdentifyRes *identifyRes))completion {
1360  NSDictionary *rparams = @{@"userAssertion": KBRValue(params.userAssertion), @"forceRemoteCheck": @(params.forceRemoteCheck), @"useDelegateUI": @(params.useDelegateUI), @"reason": KBRValue(params.reason), @"source": @(params.source)};
1361  [self.client sendRequestWithMethod:@"keybase.1.identify.identify" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
1362    if (error) {
1363      completion(error, nil);
1364      return;
1365    }
1366    KBRIdentifyRes *result = retval ? [MTLJSONAdapter modelOfClass:KBRIdentifyRes.class fromJSONDictionary:retval error:&error] : nil;
1367    completion(error, result);
1368  }];
1369}
1370
1371- (void)identifyWithUserAssertion:(NSString *)userAssertion forceRemoteCheck:(BOOL)forceRemoteCheck useDelegateUI:(BOOL)useDelegateUI reason:(KBRIdentifyReason *)reason source:(KBRClientType)source completion:(void (^)(NSError *error, KBRIdentifyRes *identifyRes))completion {
1372  NSDictionary *rparams = @{@"userAssertion": KBRValue(userAssertion), @"forceRemoteCheck": @(forceRemoteCheck), @"useDelegateUI": @(useDelegateUI), @"reason": KBRValue(reason), @"source": @(source)};
1373  [self.client sendRequestWithMethod:@"keybase.1.identify.identify" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
1374    if (error) {
1375      completion(error, nil);
1376      return;
1377    }
1378    KBRIdentifyRes *result = retval ? [MTLJSONAdapter modelOfClass:KBRIdentifyRes.class fromJSONDictionary:retval error:&error] : nil;
1379    completion(error, result);
1380  }];
1381}
1382
1383- (void)identify2:(KBRIdentify2RequestParams *)params completion:(void (^)(NSError *error, KBRIdentify2Res *identify2Res))completion {
1384  NSDictionary *rparams = @{@"uid": KBRValue(params.uid), @"userAssertion": KBRValue(params.userAssertion), @"reason": KBRValue(params.reason), @"useDelegateUI": @(params.useDelegateUI), @"alwaysBlock": @(params.alwaysBlock), @"noErrorOnTrackFailure": @(params.noErrorOnTrackFailure), @"forceRemoteCheck": @(params.forceRemoteCheck), @"needProofSet": @(params.needProofSet), @"allowEmptySelfID": @(params.allowEmptySelfID), @"noSkipSelf": @(params.noSkipSelf), @"canSuppressUI": @(params.canSuppressUI), @"chatGUIMode": @(params.chatGUIMode), @"forceDisplay": @(params.forceDisplay)};
1385  [self.client sendRequestWithMethod:@"keybase.1.identify.identify2" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
1386    if (error) {
1387      completion(error, nil);
1388      return;
1389    }
1390    KBRIdentify2Res *result = retval ? [MTLJSONAdapter modelOfClass:KBRIdentify2Res.class fromJSONDictionary:retval error:&error] : nil;
1391    completion(error, result);
1392  }];
1393}
1394
1395- (void)identify2WithUid:(NSString *)uid userAssertion:(NSString *)userAssertion reason:(KBRIdentifyReason *)reason useDelegateUI:(BOOL)useDelegateUI alwaysBlock:(BOOL)alwaysBlock noErrorOnTrackFailure:(BOOL)noErrorOnTrackFailure forceRemoteCheck:(BOOL)forceRemoteCheck needProofSet:(BOOL)needProofSet allowEmptySelfID:(BOOL)allowEmptySelfID noSkipSelf:(BOOL)noSkipSelf canSuppressUI:(BOOL)canSuppressUI chatGUIMode:(BOOL)chatGUIMode forceDisplay:(BOOL)forceDisplay completion:(void (^)(NSError *error, KBRIdentify2Res *identify2Res))completion {
1396  NSDictionary *rparams = @{@"uid": KBRValue(uid), @"userAssertion": KBRValue(userAssertion), @"reason": KBRValue(reason), @"useDelegateUI": @(useDelegateUI), @"alwaysBlock": @(alwaysBlock), @"noErrorOnTrackFailure": @(noErrorOnTrackFailure), @"forceRemoteCheck": @(forceRemoteCheck), @"needProofSet": @(needProofSet), @"allowEmptySelfID": @(allowEmptySelfID), @"noSkipSelf": @(noSkipSelf), @"canSuppressUI": @(canSuppressUI), @"chatGUIMode": @(chatGUIMode), @"forceDisplay": @(forceDisplay)};
1397  [self.client sendRequestWithMethod:@"keybase.1.identify.identify2" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
1398    if (error) {
1399      completion(error, nil);
1400      return;
1401    }
1402    KBRIdentify2Res *result = retval ? [MTLJSONAdapter modelOfClass:KBRIdentify2Res.class fromJSONDictionary:retval error:&error] : nil;
1403    completion(error, result);
1404  }];
1405}
1406
1407@end
1408
1409@implementation KBRInstallRequest
1410
1411@end
1412
1413@implementation KBRKbfsRequest
1414
1415- (void)fSEvent:(KBRFSEventRequestParams *)params completion:(void (^)(NSError *error))completion {
1416  NSDictionary *rparams = @{@"event": KBRValue(params.event)};
1417  [self.client sendRequestWithMethod:@"keybase.1.kbfs.FSEvent" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
1418    completion(error);
1419  }];
1420}
1421
1422- (void)fSEventWithEvent:(KBRFSNotification *)event completion:(void (^)(NSError *error))completion {
1423  NSDictionary *rparams = @{@"event": KBRValue(event)};
1424  [self.client sendRequestWithMethod:@"keybase.1.kbfs.FSEvent" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
1425    completion(error);
1426  }];
1427}
1428
1429- (void)fSEditList:(KBRFSEditListRequestParams *)params completion:(void (^)(NSError *error))completion {
1430  NSDictionary *rparams = @{@"edits": KBRValue(params.edits), @"requestID": @(params.requestID)};
1431  [self.client sendRequestWithMethod:@"keybase.1.kbfs.FSEditList" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
1432    completion(error);
1433  }];
1434}
1435
1436- (void)fSEditListWithEdits:(NSArray *)edits requestID:(NSInteger)requestID completion:(void (^)(NSError *error))completion {
1437  NSDictionary *rparams = @{@"edits": KBRValue(edits), @"requestID": @(requestID)};
1438  [self.client sendRequestWithMethod:@"keybase.1.kbfs.FSEditList" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
1439    completion(error);
1440  }];
1441}
1442
1443- (void)fSSyncStatus:(KBRFSSyncStatusRequestParams *)params completion:(void (^)(NSError *error))completion {
1444  NSDictionary *rparams = @{@"status": KBRValue(params.status), @"requestID": @(params.requestID)};
1445  [self.client sendRequestWithMethod:@"keybase.1.kbfs.FSSyncStatus" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
1446    completion(error);
1447  }];
1448}
1449
1450- (void)fSSyncStatusWithStatus:(KBRFSSyncStatus *)status requestID:(NSInteger)requestID completion:(void (^)(NSError *error))completion {
1451  NSDictionary *rparams = @{@"status": KBRValue(status), @"requestID": @(requestID)};
1452  [self.client sendRequestWithMethod:@"keybase.1.kbfs.FSSyncStatus" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
1453    completion(error);
1454  }];
1455}
1456
1457- (void)fSSyncEvent:(KBRFSSyncEventRequestParams *)params completion:(void (^)(NSError *error))completion {
1458  NSDictionary *rparams = @{@"event": KBRValue(params.event)};
1459  [self.client sendRequestWithMethod:@"keybase.1.kbfs.FSSyncEvent" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
1460    completion(error);
1461  }];
1462}
1463
1464- (void)fSSyncEventWithEvent:(KBRFSPathSyncStatus *)event completion:(void (^)(NSError *error))completion {
1465  NSDictionary *rparams = @{@"event": KBRValue(event)};
1466  [self.client sendRequestWithMethod:@"keybase.1.kbfs.FSSyncEvent" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
1467    completion(error);
1468  }];
1469}
1470
1471@end
1472
1473@implementation KBRKbfsCommonRequest
1474
1475@end
1476
1477@implementation KBRKbfsMountRequest
1478
1479- (void)getCurrentMountDir:(void (^)(NSError *error, NSString *str))completion {
1480  NSDictionary *rparams = @{};
1481  [self.client sendRequestWithMethod:@"keybase.1.kbfsMount.GetCurrentMountDir" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
1482    if (error) {
1483      completion(error, nil);
1484      return;
1485    }
1486    NSString *result = retval ? [MTLJSONAdapter modelOfClass:NSString.class fromJSONDictionary:retval error:&error] : nil;
1487    completion(error, result);
1488  }];
1489}
1490
1491- (void)getAllAvailableMountDirs:(void (^)(NSError *error, NSArray *items))completion {
1492  NSDictionary *rparams = @{};
1493  [self.client sendRequestWithMethod:@"keybase.1.kbfsMount.GetAllAvailableMountDirs" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
1494    if (error) {
1495      completion(error, nil);
1496      return;
1497    }
1498    NSArray *results = retval ? [MTLJSONAdapter modelsOfClass:NSString.class fromJSONArray:retval error:&error] : nil;
1499    completion(error, results);
1500  }];
1501}
1502
1503- (void)setCurrentMountDir:(KBRSetCurrentMountDirRequestParams *)params completion:(void (^)(NSError *error))completion {
1504  NSDictionary *rparams = @{@"dir": KBRValue(params.dir)};
1505  [self.client sendRequestWithMethod:@"keybase.1.kbfsMount.SetCurrentMountDir" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
1506    completion(error);
1507  }];
1508}
1509
1510- (void)setCurrentMountDirWithDir:(NSString *)dir completion:(void (^)(NSError *error))completion {
1511  NSDictionary *rparams = @{@"dir": KBRValue(dir)};
1512  [self.client sendRequestWithMethod:@"keybase.1.kbfsMount.SetCurrentMountDir" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
1513    completion(error);
1514  }];
1515}
1516
1517@end
1518
1519@implementation KBRKex2ProvisioneeRequest
1520
1521- (void)hello:(KBRHelloRequestParams *)params completion:(void (^)(NSError *error, NSString *helloRes))completion {
1522  NSDictionary *rparams = @{@"uid": KBRValue(params.uid), @"token": KBRValue(params.token), @"csrf": KBRValue(params.csrf), @"pps": KBRValue(params.pps), @"sigBody": KBRValue(params.sigBody)};
1523  [self.client sendRequestWithMethod:@"keybase.1.Kex2Provisionee.hello" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
1524    if (error) {
1525      completion(error, nil);
1526      return;
1527    }
1528    NSString *result = retval ? [MTLJSONAdapter modelOfClass:NSString.class fromJSONDictionary:retval error:&error] : nil;
1529    completion(error, result);
1530  }];
1531}
1532
1533- (void)helloWithUid:(NSString *)uid token:(NSString *)token csrf:(NSString *)csrf pps:(KBRPassphraseStream *)pps sigBody:(NSString *)sigBody completion:(void (^)(NSError *error, NSString *helloRes))completion {
1534  NSDictionary *rparams = @{@"uid": KBRValue(uid), @"token": KBRValue(token), @"csrf": KBRValue(csrf), @"pps": KBRValue(pps), @"sigBody": KBRValue(sigBody)};
1535  [self.client sendRequestWithMethod:@"keybase.1.Kex2Provisionee.hello" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
1536    if (error) {
1537      completion(error, nil);
1538      return;
1539    }
1540    NSString *result = retval ? [MTLJSONAdapter modelOfClass:NSString.class fromJSONDictionary:retval error:&error] : nil;
1541    completion(error, result);
1542  }];
1543}
1544
1545- (void)didCounterSign:(KBRDidCounterSignRequestParams *)params completion:(void (^)(NSError *error))completion {
1546  NSDictionary *rparams = @{@"sig": KBRValue(params.sig)};
1547  [self.client sendRequestWithMethod:@"keybase.1.Kex2Provisionee.didCounterSign" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
1548    completion(error);
1549  }];
1550}
1551
1552- (void)didCounterSignWithSig:(NSData *)sig completion:(void (^)(NSError *error))completion {
1553  NSDictionary *rparams = @{@"sig": KBRValue(sig)};
1554  [self.client sendRequestWithMethod:@"keybase.1.Kex2Provisionee.didCounterSign" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
1555    completion(error);
1556  }];
1557}
1558
1559@end
1560
1561@implementation KBRKex2Provisionee2Request
1562
1563- (void)hello2:(KBRHello2RequestParams *)params completion:(void (^)(NSError *error, KBRHello2Res *hello2Res))completion {
1564  NSDictionary *rparams = @{@"uid": KBRValue(params.uid), @"token": KBRValue(params.token), @"csrf": KBRValue(params.csrf), @"sigBody": KBRValue(params.sigBody)};
1565  [self.client sendRequestWithMethod:@"keybase.1.Kex2Provisionee2.hello2" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
1566    if (error) {
1567      completion(error, nil);
1568      return;
1569    }
1570    KBRHello2Res *result = retval ? [MTLJSONAdapter modelOfClass:KBRHello2Res.class fromJSONDictionary:retval error:&error] : nil;
1571    completion(error, result);
1572  }];
1573}
1574
1575- (void)hello2WithUid:(NSString *)uid token:(NSString *)token csrf:(NSString *)csrf sigBody:(NSString *)sigBody completion:(void (^)(NSError *error, KBRHello2Res *hello2Res))completion {
1576  NSDictionary *rparams = @{@"uid": KBRValue(uid), @"token": KBRValue(token), @"csrf": KBRValue(csrf), @"sigBody": KBRValue(sigBody)};
1577  [self.client sendRequestWithMethod:@"keybase.1.Kex2Provisionee2.hello2" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
1578    if (error) {
1579      completion(error, nil);
1580      return;
1581    }
1582    KBRHello2Res *result = retval ? [MTLJSONAdapter modelOfClass:KBRHello2Res.class fromJSONDictionary:retval error:&error] : nil;
1583    completion(error, result);
1584  }];
1585}
1586
1587- (void)didCounterSign2:(KBRDidCounterSign2RequestParams *)params completion:(void (^)(NSError *error))completion {
1588  NSDictionary *rparams = @{@"sig": KBRValue(params.sig), @"ppsEncrypted": KBRValue(params.ppsEncrypted)};
1589  [self.client sendRequestWithMethod:@"keybase.1.Kex2Provisionee2.didCounterSign2" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
1590    completion(error);
1591  }];
1592}
1593
1594- (void)didCounterSign2WithSig:(NSData *)sig ppsEncrypted:(NSString *)ppsEncrypted completion:(void (^)(NSError *error))completion {
1595  NSDictionary *rparams = @{@"sig": KBRValue(sig), @"ppsEncrypted": KBRValue(ppsEncrypted)};
1596  [self.client sendRequestWithMethod:@"keybase.1.Kex2Provisionee2.didCounterSign2" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
1597    completion(error);
1598  }];
1599}
1600
1601@end
1602
1603@implementation KBRKex2ProvisionerRequest
1604
1605- (void)kexStart:(void (^)(NSError *error))completion {
1606  NSDictionary *rparams = @{};
1607  [self.client sendRequestWithMethod:@"keybase.1.Kex2Provisioner.kexStart" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
1608    completion(error);
1609  }];
1610}
1611
1612@end
1613
1614@implementation KBRLogRequest
1615
1616- (void)registerLogger:(KBRRegisterLoggerRequestParams *)params completion:(void (^)(NSError *error))completion {
1617  NSDictionary *rparams = @{@"name": KBRValue(params.name), @"level": @(params.level)};
1618  [self.client sendRequestWithMethod:@"keybase.1.log.registerLogger" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
1619    completion(error);
1620  }];
1621}
1622
1623- (void)registerLoggerWithName:(NSString *)name level:(KBRLogLevel)level completion:(void (^)(NSError *error))completion {
1624  NSDictionary *rparams = @{@"name": KBRValue(name), @"level": @(level)};
1625  [self.client sendRequestWithMethod:@"keybase.1.log.registerLogger" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
1626    completion(error);
1627  }];
1628}
1629
1630@end
1631
1632@implementation KBRLogUiRequest
1633
1634- (void)log:(KBRLogRequestParams *)params completion:(void (^)(NSError *error))completion {
1635  NSDictionary *rparams = @{@"level": @(params.level), @"text": KBRValue(params.text)};
1636  [self.client sendRequestWithMethod:@"keybase.1.logUi.log" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
1637    completion(error);
1638  }];
1639}
1640
1641- (void)logWithLevel:(KBRLogLevel)level text:(KBRText *)text completion:(void (^)(NSError *error))completion {
1642  NSDictionary *rparams = @{@"level": @(level), @"text": KBRValue(text)};
1643  [self.client sendRequestWithMethod:@"keybase.1.logUi.log" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
1644    completion(error);
1645  }];
1646}
1647
1648@end
1649
1650@implementation KBRLoginRequest
1651
1652- (void)getConfiguredAccounts:(void (^)(NSError *error, NSArray *items))completion {
1653  NSDictionary *rparams = @{};
1654  [self.client sendRequestWithMethod:@"keybase.1.login.getConfiguredAccounts" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
1655    if (error) {
1656      completion(error, nil);
1657      return;
1658    }
1659    NSArray *results = retval ? [MTLJSONAdapter modelsOfClass:KBRConfiguredAccount.class fromJSONArray:retval error:&error] : nil;
1660    completion(error, results);
1661  }];
1662}
1663
1664- (void)login:(KBRLoginRequestParams *)params completion:(void (^)(NSError *error))completion {
1665  NSDictionary *rparams = @{@"deviceType": KBRValue(params.deviceType), @"usernameOrEmail": KBRValue(params.usernameOrEmail), @"clientType": @(params.clientType)};
1666  [self.client sendRequestWithMethod:@"keybase.1.login.login" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
1667    completion(error);
1668  }];
1669}
1670
1671- (void)loginWithDeviceType:(NSString *)deviceType usernameOrEmail:(NSString *)usernameOrEmail clientType:(KBRClientType)clientType completion:(void (^)(NSError *error))completion {
1672  NSDictionary *rparams = @{@"deviceType": KBRValue(deviceType), @"usernameOrEmail": KBRValue(usernameOrEmail), @"clientType": @(clientType)};
1673  [self.client sendRequestWithMethod:@"keybase.1.login.login" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
1674    completion(error);
1675  }];
1676}
1677
1678- (void)clearStoredSecret:(KBRClearStoredSecretRequestParams *)params completion:(void (^)(NSError *error))completion {
1679  NSDictionary *rparams = @{@"username": KBRValue(params.username)};
1680  [self.client sendRequestWithMethod:@"keybase.1.login.clearStoredSecret" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
1681    completion(error);
1682  }];
1683}
1684
1685- (void)clearStoredSecretWithUsername:(NSString *)username completion:(void (^)(NSError *error))completion {
1686  NSDictionary *rparams = @{@"username": KBRValue(username)};
1687  [self.client sendRequestWithMethod:@"keybase.1.login.clearStoredSecret" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
1688    completion(error);
1689  }];
1690}
1691
1692- (void)logout:(void (^)(NSError *error))completion {
1693  NSDictionary *rparams = @{};
1694  [self.client sendRequestWithMethod:@"keybase.1.login.logout" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
1695    completion(error);
1696  }];
1697}
1698
1699- (void)deprovision:(KBRDeprovisionRequestParams *)params completion:(void (^)(NSError *error))completion {
1700  NSDictionary *rparams = @{@"username": KBRValue(params.username), @"doRevoke": @(params.doRevoke)};
1701  [self.client sendRequestWithMethod:@"keybase.1.login.deprovision" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
1702    completion(error);
1703  }];
1704}
1705
1706- (void)deprovisionWithUsername:(NSString *)username doRevoke:(BOOL)doRevoke completion:(void (^)(NSError *error))completion {
1707  NSDictionary *rparams = @{@"username": KBRValue(username), @"doRevoke": @(doRevoke)};
1708  [self.client sendRequestWithMethod:@"keybase.1.login.deprovision" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
1709    completion(error);
1710  }];
1711}
1712
1713- (void)recoverAccountFromEmailAddress:(KBRRecoverAccountFromEmailAddressRequestParams *)params completion:(void (^)(NSError *error))completion {
1714  NSDictionary *rparams = @{@"email": KBRValue(params.email)};
1715  [self.client sendRequestWithMethod:@"keybase.1.login.recoverAccountFromEmailAddress" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
1716    completion(error);
1717  }];
1718}
1719
1720- (void)recoverAccountFromEmailAddressWithEmail:(NSString *)email completion:(void (^)(NSError *error))completion {
1721  NSDictionary *rparams = @{@"email": KBRValue(email)};
1722  [self.client sendRequestWithMethod:@"keybase.1.login.recoverAccountFromEmailAddress" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
1723    completion(error);
1724  }];
1725}
1726
1727- (void)paperKey:(void (^)(NSError *error))completion {
1728  NSDictionary *rparams = @{};
1729  [self.client sendRequestWithMethod:@"keybase.1.login.paperKey" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
1730    completion(error);
1731  }];
1732}
1733
1734- (void)paperKeySubmit:(KBRPaperKeySubmitRequestParams *)params completion:(void (^)(NSError *error))completion {
1735  NSDictionary *rparams = @{@"paperPhrase": KBRValue(params.paperPhrase)};
1736  [self.client sendRequestWithMethod:@"keybase.1.login.paperKeySubmit" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
1737    completion(error);
1738  }];
1739}
1740
1741- (void)paperKeySubmitWithPaperPhrase:(NSString *)paperPhrase completion:(void (^)(NSError *error))completion {
1742  NSDictionary *rparams = @{@"paperPhrase": KBRValue(paperPhrase)};
1743  [self.client sendRequestWithMethod:@"keybase.1.login.paperKeySubmit" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
1744    completion(error);
1745  }];
1746}
1747
1748- (void)unlock:(void (^)(NSError *error))completion {
1749  NSDictionary *rparams = @{};
1750  [self.client sendRequestWithMethod:@"keybase.1.login.unlock" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
1751    completion(error);
1752  }];
1753}
1754
1755- (void)unlockWithPassphrase:(KBRUnlockWithPassphraseRequestParams *)params completion:(void (^)(NSError *error))completion {
1756  NSDictionary *rparams = @{@"passphrase": KBRValue(params.passphrase)};
1757  [self.client sendRequestWithMethod:@"keybase.1.login.unlockWithPassphrase" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
1758    completion(error);
1759  }];
1760}
1761
1762- (void)unlockWithPassphraseWithPassphrase:(NSString *)passphrase completion:(void (^)(NSError *error))completion {
1763  NSDictionary *rparams = @{@"passphrase": KBRValue(passphrase)};
1764  [self.client sendRequestWithMethod:@"keybase.1.login.unlockWithPassphrase" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
1765    completion(error);
1766  }];
1767}
1768
1769- (void)pgpProvision:(KBRPgpProvisionRequestParams *)params completion:(void (^)(NSError *error))completion {
1770  NSDictionary *rparams = @{@"username": KBRValue(params.username), @"passphrase": KBRValue(params.passphrase), @"deviceName": KBRValue(params.deviceName)};
1771  [self.client sendRequestWithMethod:@"keybase.1.login.pgpProvision" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
1772    completion(error);
1773  }];
1774}
1775
1776- (void)pgpProvisionWithUsername:(NSString *)username passphrase:(NSString *)passphrase deviceName:(NSString *)deviceName completion:(void (^)(NSError *error))completion {
1777  NSDictionary *rparams = @{@"username": KBRValue(username), @"passphrase": KBRValue(passphrase), @"deviceName": KBRValue(deviceName)};
1778  [self.client sendRequestWithMethod:@"keybase.1.login.pgpProvision" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
1779    completion(error);
1780  }];
1781}
1782
1783- (void)accountDelete:(void (^)(NSError *error))completion {
1784  NSDictionary *rparams = @{};
1785  [self.client sendRequestWithMethod:@"keybase.1.login.accountDelete" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
1786    completion(error);
1787  }];
1788}
1789
1790@end
1791
1792@implementation KBRLoginUiRequest
1793
1794- (void)getEmailOrUsername:(void (^)(NSError *error, NSString *str))completion {
1795  NSDictionary *rparams = @{};
1796  [self.client sendRequestWithMethod:@"keybase.1.loginUi.getEmailOrUsername" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
1797    if (error) {
1798      completion(error, nil);
1799      return;
1800    }
1801    NSString *result = retval ? [MTLJSONAdapter modelOfClass:NSString.class fromJSONDictionary:retval error:&error] : nil;
1802    completion(error, result);
1803  }];
1804}
1805
1806- (void)promptRevokePaperKeys:(KBRPromptRevokePaperKeysRequestParams *)params completion:(void (^)(NSError *error, BOOL b))completion {
1807  NSDictionary *rparams = @{@"device": KBRValue(params.device), @"index": @(params.index)};
1808  [self.client sendRequestWithMethod:@"keybase.1.loginUi.promptRevokePaperKeys" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
1809    completion(error, 0);
1810  }];
1811}
1812
1813- (void)promptRevokePaperKeysWithDevice:(KBRDevice *)device index:(NSInteger)index completion:(void (^)(NSError *error, BOOL b))completion {
1814  NSDictionary *rparams = @{@"device": KBRValue(device), @"index": @(index)};
1815  [self.client sendRequestWithMethod:@"keybase.1.loginUi.promptRevokePaperKeys" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
1816    completion(error, 0);
1817  }];
1818}
1819
1820- (void)displayPaperKeyPhrase:(KBRDisplayPaperKeyPhraseRequestParams *)params completion:(void (^)(NSError *error))completion {
1821  NSDictionary *rparams = @{@"phrase": KBRValue(params.phrase)};
1822  [self.client sendRequestWithMethod:@"keybase.1.loginUi.displayPaperKeyPhrase" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
1823    completion(error);
1824  }];
1825}
1826
1827- (void)displayPaperKeyPhraseWithPhrase:(NSString *)phrase completion:(void (^)(NSError *error))completion {
1828  NSDictionary *rparams = @{@"phrase": KBRValue(phrase)};
1829  [self.client sendRequestWithMethod:@"keybase.1.loginUi.displayPaperKeyPhrase" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
1830    completion(error);
1831  }];
1832}
1833
1834- (void)displayPrimaryPaperKey:(KBRDisplayPrimaryPaperKeyRequestParams *)params completion:(void (^)(NSError *error))completion {
1835  NSDictionary *rparams = @{@"phrase": KBRValue(params.phrase)};
1836  [self.client sendRequestWithMethod:@"keybase.1.loginUi.displayPrimaryPaperKey" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
1837    completion(error);
1838  }];
1839}
1840
1841- (void)displayPrimaryPaperKeyWithPhrase:(NSString *)phrase completion:(void (^)(NSError *error))completion {
1842  NSDictionary *rparams = @{@"phrase": KBRValue(phrase)};
1843  [self.client sendRequestWithMethod:@"keybase.1.loginUi.displayPrimaryPaperKey" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
1844    completion(error);
1845  }];
1846}
1847
1848@end
1849
1850@implementation KBRMetadataRequest
1851
1852- (void)getChallenge:(void (^)(NSError *error, KBRChallengeInfo *challengeInfo))completion {
1853  NSDictionary *rparams = @{};
1854  [self.client sendRequestWithMethod:@"keybase.1.metadata.getChallenge" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
1855    if (error) {
1856      completion(error, nil);
1857      return;
1858    }
1859    KBRChallengeInfo *result = retval ? [MTLJSONAdapter modelOfClass:KBRChallengeInfo.class fromJSONDictionary:retval error:&error] : nil;
1860    completion(error, result);
1861  }];
1862}
1863
1864- (void)authenticate:(KBRAuthenticateRequestParams *)params completion:(void (^)(NSError *error, NSInteger n))completion {
1865  NSDictionary *rparams = @{@"signature": KBRValue(params.signature)};
1866  [self.client sendRequestWithMethod:@"keybase.1.metadata.authenticate" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
1867    completion(error, 0);
1868  }];
1869}
1870
1871- (void)authenticateWithSignature:(NSString *)signature completion:(void (^)(NSError *error, NSInteger n))completion {
1872  NSDictionary *rparams = @{@"signature": KBRValue(signature)};
1873  [self.client sendRequestWithMethod:@"keybase.1.metadata.authenticate" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
1874    completion(error, 0);
1875  }];
1876}
1877
1878- (void)putMetadata:(KBRPutMetadataRequestParams *)params completion:(void (^)(NSError *error))completion {
1879  NSDictionary *rparams = @{@"mdBlock": KBRValue(params.mdBlock), @"readerKeyBundle": KBRValue(params.readerKeyBundle), @"writerKeyBundle": KBRValue(params.writerKeyBundle), @"logTags": KBRValue(params.logTags)};
1880  [self.client sendRequestWithMethod:@"keybase.1.metadata.putMetadata" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
1881    completion(error);
1882  }];
1883}
1884
1885- (void)putMetadataWithMdBlock:(KBRMDBlock *)mdBlock readerKeyBundle:(KBRKeyBundle *)readerKeyBundle writerKeyBundle:(KBRKeyBundle *)writerKeyBundle logTags:(NSDictionary *)logTags completion:(void (^)(NSError *error))completion {
1886  NSDictionary *rparams = @{@"mdBlock": KBRValue(mdBlock), @"readerKeyBundle": KBRValue(readerKeyBundle), @"writerKeyBundle": KBRValue(writerKeyBundle), @"logTags": KBRValue(logTags)};
1887  [self.client sendRequestWithMethod:@"keybase.1.metadata.putMetadata" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
1888    completion(error);
1889  }];
1890}
1891
1892- (void)getMetadata:(KBRGetMetadataRequestParams *)params completion:(void (^)(NSError *error, KBRMetadataResponse *metadataResponse))completion {
1893  NSDictionary *rparams = @{@"folderID": KBRValue(params.folderID), @"folderHandle": KBRValue(params.folderHandle), @"branchID": KBRValue(params.branchID), @"unmerged": @(params.unmerged), @"startRevision": @(params.startRevision), @"stopRevision": @(params.stopRevision), @"logTags": KBRValue(params.logTags)};
1894  [self.client sendRequestWithMethod:@"keybase.1.metadata.getMetadata" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
1895    if (error) {
1896      completion(error, nil);
1897      return;
1898    }
1899    KBRMetadataResponse *result = retval ? [MTLJSONAdapter modelOfClass:KBRMetadataResponse.class fromJSONDictionary:retval error:&error] : nil;
1900    completion(error, result);
1901  }];
1902}
1903
1904- (void)getMetadataWithFolderID:(NSString *)folderID folderHandle:(NSData *)folderHandle branchID:(NSString *)branchID unmerged:(BOOL)unmerged startRevision:(int64_t)startRevision stopRevision:(int64_t)stopRevision logTags:(NSDictionary *)logTags completion:(void (^)(NSError *error, KBRMetadataResponse *metadataResponse))completion {
1905  NSDictionary *rparams = @{@"folderID": KBRValue(folderID), @"folderHandle": KBRValue(folderHandle), @"branchID": KBRValue(branchID), @"unmerged": @(unmerged), @"startRevision": @(startRevision), @"stopRevision": @(stopRevision), @"logTags": KBRValue(logTags)};
1906  [self.client sendRequestWithMethod:@"keybase.1.metadata.getMetadata" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
1907    if (error) {
1908      completion(error, nil);
1909      return;
1910    }
1911    KBRMetadataResponse *result = retval ? [MTLJSONAdapter modelOfClass:KBRMetadataResponse.class fromJSONDictionary:retval error:&error] : nil;
1912    completion(error, result);
1913  }];
1914}
1915
1916- (void)registerForUpdates:(KBRRegisterForUpdatesRequestParams *)params completion:(void (^)(NSError *error))completion {
1917  NSDictionary *rparams = @{@"folderID": KBRValue(params.folderID), @"currRevision": @(params.currRevision), @"logTags": KBRValue(params.logTags)};
1918  [self.client sendRequestWithMethod:@"keybase.1.metadata.registerForUpdates" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
1919    completion(error);
1920  }];
1921}
1922
1923- (void)registerForUpdatesWithFolderID:(NSString *)folderID currRevision:(int64_t)currRevision logTags:(NSDictionary *)logTags completion:(void (^)(NSError *error))completion {
1924  NSDictionary *rparams = @{@"folderID": KBRValue(folderID), @"currRevision": @(currRevision), @"logTags": KBRValue(logTags)};
1925  [self.client sendRequestWithMethod:@"keybase.1.metadata.registerForUpdates" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
1926    completion(error);
1927  }];
1928}
1929
1930- (void)pruneBranch:(KBRPruneBranchRequestParams *)params completion:(void (^)(NSError *error))completion {
1931  NSDictionary *rparams = @{@"folderID": KBRValue(params.folderID), @"branchID": KBRValue(params.branchID), @"logTags": KBRValue(params.logTags)};
1932  [self.client sendRequestWithMethod:@"keybase.1.metadata.pruneBranch" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
1933    completion(error);
1934  }];
1935}
1936
1937- (void)pruneBranchWithFolderID:(NSString *)folderID branchID:(NSString *)branchID logTags:(NSDictionary *)logTags completion:(void (^)(NSError *error))completion {
1938  NSDictionary *rparams = @{@"folderID": KBRValue(folderID), @"branchID": KBRValue(branchID), @"logTags": KBRValue(logTags)};
1939  [self.client sendRequestWithMethod:@"keybase.1.metadata.pruneBranch" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
1940    completion(error);
1941  }];
1942}
1943
1944- (void)putKeys:(KBRPutKeysRequestParams *)params completion:(void (^)(NSError *error))completion {
1945  NSDictionary *rparams = @{@"keyHalves": KBRValue(params.keyHalves), @"logTags": KBRValue(params.logTags)};
1946  [self.client sendRequestWithMethod:@"keybase.1.metadata.putKeys" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
1947    completion(error);
1948  }];
1949}
1950
1951- (void)putKeysWithKeyHalves:(NSArray *)keyHalves logTags:(NSDictionary *)logTags completion:(void (^)(NSError *error))completion {
1952  NSDictionary *rparams = @{@"keyHalves": KBRValue(keyHalves), @"logTags": KBRValue(logTags)};
1953  [self.client sendRequestWithMethod:@"keybase.1.metadata.putKeys" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
1954    completion(error);
1955  }];
1956}
1957
1958- (void)getKey:(KBRGetKeyRequestParams *)params completion:(void (^)(NSError *error, NSData *bytes))completion {
1959  NSDictionary *rparams = @{@"keyHalfID": KBRValue(params.keyHalfID), @"deviceKID": KBRValue(params.deviceKID), @"logTags": KBRValue(params.logTags)};
1960  [self.client sendRequestWithMethod:@"keybase.1.metadata.getKey" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
1961    if (error) {
1962      completion(error, nil);
1963      return;
1964    }
1965    NSData *result = retval ? [MTLJSONAdapter modelOfClass:NSData.class fromJSONDictionary:retval error:&error] : nil;
1966    completion(error, result);
1967  }];
1968}
1969
1970- (void)getKeyWithKeyHalfID:(NSData *)keyHalfID deviceKID:(NSString *)deviceKID logTags:(NSDictionary *)logTags completion:(void (^)(NSError *error, NSData *bytes))completion {
1971  NSDictionary *rparams = @{@"keyHalfID": KBRValue(keyHalfID), @"deviceKID": KBRValue(deviceKID), @"logTags": KBRValue(logTags)};
1972  [self.client sendRequestWithMethod:@"keybase.1.metadata.getKey" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
1973    if (error) {
1974      completion(error, nil);
1975      return;
1976    }
1977    NSData *result = retval ? [MTLJSONAdapter modelOfClass:NSData.class fromJSONDictionary:retval error:&error] : nil;
1978    completion(error, result);
1979  }];
1980}
1981
1982- (void)deleteKey:(KBRDeleteKeyRequestParams *)params completion:(void (^)(NSError *error))completion {
1983  NSDictionary *rparams = @{@"uid": KBRValue(params.uid), @"deviceKID": KBRValue(params.deviceKID), @"keyHalfID": KBRValue(params.keyHalfID), @"logTags": KBRValue(params.logTags)};
1984  [self.client sendRequestWithMethod:@"keybase.1.metadata.deleteKey" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
1985    completion(error);
1986  }];
1987}
1988
1989- (void)deleteKeyWithUid:(NSString *)uid deviceKID:(NSString *)deviceKID keyHalfID:(NSData *)keyHalfID logTags:(NSDictionary *)logTags completion:(void (^)(NSError *error))completion {
1990  NSDictionary *rparams = @{@"uid": KBRValue(uid), @"deviceKID": KBRValue(deviceKID), @"keyHalfID": KBRValue(keyHalfID), @"logTags": KBRValue(logTags)};
1991  [self.client sendRequestWithMethod:@"keybase.1.metadata.deleteKey" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
1992    completion(error);
1993  }];
1994}
1995
1996- (void)truncateLock:(KBRTruncateLockRequestParams *)params completion:(void (^)(NSError *error, BOOL b))completion {
1997  NSDictionary *rparams = @{@"folderID": KBRValue(params.folderID)};
1998  [self.client sendRequestWithMethod:@"keybase.1.metadata.truncateLock" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
1999    completion(error, 0);
2000  }];
2001}
2002
2003- (void)truncateLockWithFolderID:(NSString *)folderID completion:(void (^)(NSError *error, BOOL b))completion {
2004  NSDictionary *rparams = @{@"folderID": KBRValue(folderID)};
2005  [self.client sendRequestWithMethod:@"keybase.1.metadata.truncateLock" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
2006    completion(error, 0);
2007  }];
2008}
2009
2010- (void)truncateUnlock:(KBRTruncateUnlockRequestParams *)params completion:(void (^)(NSError *error, BOOL b))completion {
2011  NSDictionary *rparams = @{@"folderID": KBRValue(params.folderID)};
2012  [self.client sendRequestWithMethod:@"keybase.1.metadata.truncateUnlock" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
2013    completion(error, 0);
2014  }];
2015}
2016
2017- (void)truncateUnlockWithFolderID:(NSString *)folderID completion:(void (^)(NSError *error, BOOL b))completion {
2018  NSDictionary *rparams = @{@"folderID": KBRValue(folderID)};
2019  [self.client sendRequestWithMethod:@"keybase.1.metadata.truncateUnlock" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
2020    completion(error, 0);
2021  }];
2022}
2023
2024- (void)getFolderHandle:(KBRGetFolderHandleRequestParams *)params completion:(void (^)(NSError *error, NSData *bytes))completion {
2025  NSDictionary *rparams = @{@"folderID": KBRValue(params.folderID), @"signature": KBRValue(params.signature), @"challenge": KBRValue(params.challenge)};
2026  [self.client sendRequestWithMethod:@"keybase.1.metadata.getFolderHandle" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
2027    if (error) {
2028      completion(error, nil);
2029      return;
2030    }
2031    NSData *result = retval ? [MTLJSONAdapter modelOfClass:NSData.class fromJSONDictionary:retval error:&error] : nil;
2032    completion(error, result);
2033  }];
2034}
2035
2036- (void)getFolderHandleWithFolderID:(NSString *)folderID signature:(NSString *)signature challenge:(NSString *)challenge completion:(void (^)(NSError *error, NSData *bytes))completion {
2037  NSDictionary *rparams = @{@"folderID": KBRValue(folderID), @"signature": KBRValue(signature), @"challenge": KBRValue(challenge)};
2038  [self.client sendRequestWithMethod:@"keybase.1.metadata.getFolderHandle" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
2039    if (error) {
2040      completion(error, nil);
2041      return;
2042    }
2043    NSData *result = retval ? [MTLJSONAdapter modelOfClass:NSData.class fromJSONDictionary:retval error:&error] : nil;
2044    completion(error, result);
2045  }];
2046}
2047
2048- (void)getFoldersForRekey:(KBRGetFoldersForRekeyRequestParams *)params completion:(void (^)(NSError *error))completion {
2049  NSDictionary *rparams = @{@"deviceKID": KBRValue(params.deviceKID)};
2050  [self.client sendRequestWithMethod:@"keybase.1.metadata.getFoldersForRekey" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
2051    completion(error);
2052  }];
2053}
2054
2055- (void)getFoldersForRekeyWithDeviceKID:(NSString *)deviceKID completion:(void (^)(NSError *error))completion {
2056  NSDictionary *rparams = @{@"deviceKID": KBRValue(deviceKID)};
2057  [self.client sendRequestWithMethod:@"keybase.1.metadata.getFoldersForRekey" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
2058    completion(error);
2059  }];
2060}
2061
2062- (void)ping:(void (^)(NSError *error))completion {
2063  NSDictionary *rparams = @{};
2064  [self.client sendRequestWithMethod:@"keybase.1.metadata.ping" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
2065    completion(error);
2066  }];
2067}
2068
2069- (void)ping2:(void (^)(NSError *error, KBRPingResponse *pingResponse))completion {
2070  NSDictionary *rparams = @{};
2071  [self.client sendRequestWithMethod:@"keybase.1.metadata.ping2" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
2072    if (error) {
2073      completion(error, nil);
2074      return;
2075    }
2076    KBRPingResponse *result = retval ? [MTLJSONAdapter modelOfClass:KBRPingResponse.class fromJSONDictionary:retval error:&error] : nil;
2077    completion(error, result);
2078  }];
2079}
2080
2081- (void)getLatestFolderHandle:(KBRGetLatestFolderHandleRequestParams *)params completion:(void (^)(NSError *error, NSData *bytes))completion {
2082  NSDictionary *rparams = @{@"folderID": KBRValue(params.folderID)};
2083  [self.client sendRequestWithMethod:@"keybase.1.metadata.getLatestFolderHandle" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
2084    if (error) {
2085      completion(error, nil);
2086      return;
2087    }
2088    NSData *result = retval ? [MTLJSONAdapter modelOfClass:NSData.class fromJSONDictionary:retval error:&error] : nil;
2089    completion(error, result);
2090  }];
2091}
2092
2093- (void)getLatestFolderHandleWithFolderID:(NSString *)folderID completion:(void (^)(NSError *error, NSData *bytes))completion {
2094  NSDictionary *rparams = @{@"folderID": KBRValue(folderID)};
2095  [self.client sendRequestWithMethod:@"keybase.1.metadata.getLatestFolderHandle" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
2096    if (error) {
2097      completion(error, nil);
2098      return;
2099    }
2100    NSData *result = retval ? [MTLJSONAdapter modelOfClass:NSData.class fromJSONDictionary:retval error:&error] : nil;
2101    completion(error, result);
2102  }];
2103}
2104
2105- (void)getKeyBundles:(KBRGetKeyBundlesRequestParams *)params completion:(void (^)(NSError *error, KBRKeyBundleResponse *keyBundleResponse))completion {
2106  NSDictionary *rparams = @{@"folderID": KBRValue(params.folderID), @"writerBundleID": KBRValue(params.writerBundleID), @"readerBundleID": KBRValue(params.readerBundleID)};
2107  [self.client sendRequestWithMethod:@"keybase.1.metadata.getKeyBundles" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
2108    if (error) {
2109      completion(error, nil);
2110      return;
2111    }
2112    KBRKeyBundleResponse *result = retval ? [MTLJSONAdapter modelOfClass:KBRKeyBundleResponse.class fromJSONDictionary:retval error:&error] : nil;
2113    completion(error, result);
2114  }];
2115}
2116
2117- (void)getKeyBundlesWithFolderID:(NSString *)folderID writerBundleID:(NSString *)writerBundleID readerBundleID:(NSString *)readerBundleID completion:(void (^)(NSError *error, KBRKeyBundleResponse *keyBundleResponse))completion {
2118  NSDictionary *rparams = @{@"folderID": KBRValue(folderID), @"writerBundleID": KBRValue(writerBundleID), @"readerBundleID": KBRValue(readerBundleID)};
2119  [self.client sendRequestWithMethod:@"keybase.1.metadata.getKeyBundles" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
2120    if (error) {
2121      completion(error, nil);
2122      return;
2123    }
2124    KBRKeyBundleResponse *result = retval ? [MTLJSONAdapter modelOfClass:KBRKeyBundleResponse.class fromJSONDictionary:retval error:&error] : nil;
2125    completion(error, result);
2126  }];
2127}
2128
2129- (void)getMerkleRoot:(KBRGetMerkleRootRequestParams *)params completion:(void (^)(NSError *error, KBRMerkleRoot *merkleRoot))completion {
2130  NSDictionary *rparams = @{@"treeID": @(params.treeID), @"seqNo": @(params.seqNo)};
2131  [self.client sendRequestWithMethod:@"keybase.1.metadata.getMerkleRoot" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
2132    if (error) {
2133      completion(error, nil);
2134      return;
2135    }
2136    KBRMerkleRoot *result = retval ? [MTLJSONAdapter modelOfClass:KBRMerkleRoot.class fromJSONDictionary:retval error:&error] : nil;
2137    completion(error, result);
2138  }];
2139}
2140
2141- (void)getMerkleRootWithTreeID:(KBRMerkleTreeID)treeID seqNo:(int64_t)seqNo completion:(void (^)(NSError *error, KBRMerkleRoot *merkleRoot))completion {
2142  NSDictionary *rparams = @{@"treeID": @(treeID), @"seqNo": @(seqNo)};
2143  [self.client sendRequestWithMethod:@"keybase.1.metadata.getMerkleRoot" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
2144    if (error) {
2145      completion(error, nil);
2146      return;
2147    }
2148    KBRMerkleRoot *result = retval ? [MTLJSONAdapter modelOfClass:KBRMerkleRoot.class fromJSONDictionary:retval error:&error] : nil;
2149    completion(error, result);
2150  }];
2151}
2152
2153- (void)getMerkleRootLatest:(KBRGetMerkleRootLatestRequestParams *)params completion:(void (^)(NSError *error, KBRMerkleRoot *merkleRoot))completion {
2154  NSDictionary *rparams = @{@"treeID": @(params.treeID)};
2155  [self.client sendRequestWithMethod:@"keybase.1.metadata.getMerkleRootLatest" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
2156    if (error) {
2157      completion(error, nil);
2158      return;
2159    }
2160    KBRMerkleRoot *result = retval ? [MTLJSONAdapter modelOfClass:KBRMerkleRoot.class fromJSONDictionary:retval error:&error] : nil;
2161    completion(error, result);
2162  }];
2163}
2164
2165- (void)getMerkleRootLatestWithTreeID:(KBRMerkleTreeID)treeID completion:(void (^)(NSError *error, KBRMerkleRoot *merkleRoot))completion {
2166  NSDictionary *rparams = @{@"treeID": @(treeID)};
2167  [self.client sendRequestWithMethod:@"keybase.1.metadata.getMerkleRootLatest" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
2168    if (error) {
2169      completion(error, nil);
2170      return;
2171    }
2172    KBRMerkleRoot *result = retval ? [MTLJSONAdapter modelOfClass:KBRMerkleRoot.class fromJSONDictionary:retval error:&error] : nil;
2173    completion(error, result);
2174  }];
2175}
2176
2177- (void)getMerkleRootSince:(KBRGetMerkleRootSinceRequestParams *)params completion:(void (^)(NSError *error, KBRMerkleRoot *merkleRoot))completion {
2178  NSDictionary *rparams = @{@"treeID": @(params.treeID), @"when": @(params.when)};
2179  [self.client sendRequestWithMethod:@"keybase.1.metadata.getMerkleRootSince" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
2180    if (error) {
2181      completion(error, nil);
2182      return;
2183    }
2184    KBRMerkleRoot *result = retval ? [MTLJSONAdapter modelOfClass:KBRMerkleRoot.class fromJSONDictionary:retval error:&error] : nil;
2185    completion(error, result);
2186  }];
2187}
2188
2189- (void)getMerkleRootSinceWithTreeID:(KBRMerkleTreeID)treeID when:(int64_t)when completion:(void (^)(NSError *error, KBRMerkleRoot *merkleRoot))completion {
2190  NSDictionary *rparams = @{@"treeID": @(treeID), @"when": @(when)};
2191  [self.client sendRequestWithMethod:@"keybase.1.metadata.getMerkleRootSince" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
2192    if (error) {
2193      completion(error, nil);
2194      return;
2195    }
2196    KBRMerkleRoot *result = retval ? [MTLJSONAdapter modelOfClass:KBRMerkleRoot.class fromJSONDictionary:retval error:&error] : nil;
2197    completion(error, result);
2198  }];
2199}
2200
2201- (void)getMerkleNode:(KBRGetMerkleNodeRequestParams *)params completion:(void (^)(NSError *error, NSData *bytes))completion {
2202  NSDictionary *rparams = @{@"hash": KBRValue(params.hash)};
2203  [self.client sendRequestWithMethod:@"keybase.1.metadata.getMerkleNode" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
2204    if (error) {
2205      completion(error, nil);
2206      return;
2207    }
2208    NSData *result = retval ? [MTLJSONAdapter modelOfClass:NSData.class fromJSONDictionary:retval error:&error] : nil;
2209    completion(error, result);
2210  }];
2211}
2212
2213- (void)getMerkleNodeWithHash:(NSString *)hash completion:(void (^)(NSError *error, NSData *bytes))completion {
2214  NSDictionary *rparams = @{@"hash": KBRValue(hash)};
2215  [self.client sendRequestWithMethod:@"keybase.1.metadata.getMerkleNode" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
2216    if (error) {
2217      completion(error, nil);
2218      return;
2219    }
2220    NSData *result = retval ? [MTLJSONAdapter modelOfClass:NSData.class fromJSONDictionary:retval error:&error] : nil;
2221    completion(error, result);
2222  }];
2223}
2224
2225@end
2226
2227@implementation KBRMetadataUpdateRequest
2228
2229- (void)metadataUpdate:(KBRMetadataUpdateRequestParams *)params completion:(void (^)(NSError *error))completion {
2230  NSDictionary *rparams = @{@"folderID": KBRValue(params.folderID), @"revision": @(params.revision)};
2231  [self.client sendRequestWithMethod:@"keybase.1.metadataUpdate.metadataUpdate" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
2232    completion(error);
2233  }];
2234}
2235
2236- (void)metadataUpdateWithFolderID:(NSString *)folderID revision:(int64_t)revision completion:(void (^)(NSError *error))completion {
2237  NSDictionary *rparams = @{@"folderID": KBRValue(folderID), @"revision": @(revision)};
2238  [self.client sendRequestWithMethod:@"keybase.1.metadataUpdate.metadataUpdate" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
2239    completion(error);
2240  }];
2241}
2242
2243- (void)folderNeedsRekey:(KBRFolderNeedsRekeyRequestParams *)params completion:(void (^)(NSError *error))completion {
2244  NSDictionary *rparams = @{@"folderID": KBRValue(params.folderID), @"revision": @(params.revision)};
2245  [self.client sendRequestWithMethod:@"keybase.1.metadataUpdate.folderNeedsRekey" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
2246    completion(error);
2247  }];
2248}
2249
2250- (void)folderNeedsRekeyWithFolderID:(NSString *)folderID revision:(int64_t)revision completion:(void (^)(NSError *error))completion {
2251  NSDictionary *rparams = @{@"folderID": KBRValue(folderID), @"revision": @(revision)};
2252  [self.client sendRequestWithMethod:@"keybase.1.metadataUpdate.folderNeedsRekey" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
2253    completion(error);
2254  }];
2255}
2256
2257@end
2258
2259@implementation KBRNotifyAppRequest
2260
2261- (void)exit:(void (^)(NSError *error))completion {
2262  NSDictionary *rparams = @{};
2263  [self.client sendRequestWithMethod:@"keybase.1.NotifyApp.exit" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
2264    completion(error);
2265  }];
2266}
2267
2268@end
2269
2270@implementation KBRNotifyBadgesRequest
2271
2272- (void)badgeState:(KBRBadgeStateRequestParams *)params completion:(void (^)(NSError *error))completion {
2273  NSDictionary *rparams = @{@"badgeState": KBRValue(params.badgeState)};
2274  [self.client sendRequestWithMethod:@"keybase.1.NotifyBadges.badgeState" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
2275    completion(error);
2276  }];
2277}
2278
2279- (void)badgeStateWithBadgeState:(KBRBadgeState *)badgeState completion:(void (^)(NSError *error))completion {
2280  NSDictionary *rparams = @{@"badgeState": KBRValue(badgeState)};
2281  [self.client sendRequestWithMethod:@"keybase.1.NotifyBadges.badgeState" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
2282    completion(error);
2283  }];
2284}
2285
2286@end
2287
2288@implementation KBRNotifyCtlRequest
2289
2290- (void)setNotifications:(KBRSetNotificationsRequestParams *)params completion:(void (^)(NSError *error))completion {
2291  NSDictionary *rparams = @{@"channels": KBRValue(params.channels)};
2292  [self.client sendRequestWithMethod:@"keybase.1.notifyCtl.setNotifications" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
2293    completion(error);
2294  }];
2295}
2296
2297- (void)setNotificationsWithChannels:(KBRNotificationChannels *)channels completion:(void (^)(NSError *error))completion {
2298  NSDictionary *rparams = @{@"channels": KBRValue(channels)};
2299  [self.client sendRequestWithMethod:@"keybase.1.notifyCtl.setNotifications" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
2300    completion(error);
2301  }];
2302}
2303
2304@end
2305
2306@implementation KBRNotifyFavoritesRequest
2307
2308- (void)favoritesChanged:(KBRFavoritesChangedRequestParams *)params completion:(void (^)(NSError *error))completion {
2309  NSDictionary *rparams = @{@"uid": KBRValue(params.uid)};
2310  [self.client sendRequestWithMethod:@"keybase.1.NotifyFavorites.favoritesChanged" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
2311    completion(error);
2312  }];
2313}
2314
2315- (void)favoritesChangedWithUid:(NSString *)uid completion:(void (^)(NSError *error))completion {
2316  NSDictionary *rparams = @{@"uid": KBRValue(uid)};
2317  [self.client sendRequestWithMethod:@"keybase.1.NotifyFavorites.favoritesChanged" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
2318    completion(error);
2319  }];
2320}
2321
2322@end
2323
2324@implementation KBRNotifyFSRequest
2325
2326- (void)fSActivity:(KBRFSActivityRequestParams *)params completion:(void (^)(NSError *error))completion {
2327  NSDictionary *rparams = @{@"notification": KBRValue(params.notification)};
2328  [self.client sendRequestWithMethod:@"keybase.1.NotifyFS.FSActivity" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
2329    completion(error);
2330  }];
2331}
2332
2333- (void)fSActivityWithNotification:(KBRFSNotification *)notification completion:(void (^)(NSError *error))completion {
2334  NSDictionary *rparams = @{@"notification": KBRValue(notification)};
2335  [self.client sendRequestWithMethod:@"keybase.1.NotifyFS.FSActivity" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
2336    completion(error);
2337  }];
2338}
2339
2340- (void)fSSyncActivity:(KBRFSSyncActivityRequestParams *)params completion:(void (^)(NSError *error))completion {
2341  NSDictionary *rparams = @{@"status": KBRValue(params.status)};
2342  [self.client sendRequestWithMethod:@"keybase.1.NotifyFS.FSSyncActivity" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
2343    completion(error);
2344  }];
2345}
2346
2347- (void)fSSyncActivityWithStatus:(KBRFSPathSyncStatus *)status completion:(void (^)(NSError *error))completion {
2348  NSDictionary *rparams = @{@"status": KBRValue(status)};
2349  [self.client sendRequestWithMethod:@"keybase.1.NotifyFS.FSSyncActivity" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
2350    completion(error);
2351  }];
2352}
2353
2354- (void)fSEditListResponse:(KBRFSEditListResponseRequestParams *)params completion:(void (^)(NSError *error))completion {
2355  NSDictionary *rparams = @{@"edits": KBRValue(params.edits), @"requestID": @(params.requestID)};
2356  [self.client sendRequestWithMethod:@"keybase.1.NotifyFS.FSEditListResponse" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
2357    completion(error);
2358  }];
2359}
2360
2361- (void)fSEditListResponseWithEdits:(NSArray *)edits requestID:(NSInteger)requestID completion:(void (^)(NSError *error))completion {
2362  NSDictionary *rparams = @{@"edits": KBRValue(edits), @"requestID": @(requestID)};
2363  [self.client sendRequestWithMethod:@"keybase.1.NotifyFS.FSEditListResponse" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
2364    completion(error);
2365  }];
2366}
2367
2368- (void)fSSyncStatusResponse:(KBRFSSyncStatusResponseRequestParams *)params completion:(void (^)(NSError *error))completion {
2369  NSDictionary *rparams = @{@"status": KBRValue(params.status), @"requestID": @(params.requestID)};
2370  [self.client sendRequestWithMethod:@"keybase.1.NotifyFS.FSSyncStatusResponse" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
2371    completion(error);
2372  }];
2373}
2374
2375- (void)fSSyncStatusResponseWithStatus:(KBRFSSyncStatus *)status requestID:(NSInteger)requestID completion:(void (^)(NSError *error))completion {
2376  NSDictionary *rparams = @{@"status": KBRValue(status), @"requestID": @(requestID)};
2377  [self.client sendRequestWithMethod:@"keybase.1.NotifyFS.FSSyncStatusResponse" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
2378    completion(error);
2379  }];
2380}
2381
2382@end
2383
2384@implementation KBRNotifyFSRequestRequest
2385
2386- (void)fSEditListRequest:(KBRFSEditListRequestRequestParams *)params completion:(void (^)(NSError *error))completion {
2387  NSDictionary *rparams = @{@"req": KBRValue(params.req)};
2388  [self.client sendRequestWithMethod:@"keybase.1.NotifyFSRequest.FSEditListRequest" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
2389    completion(error);
2390  }];
2391}
2392
2393- (void)fSEditListRequestWithReq:(KBRFSEditListRequest *)req completion:(void (^)(NSError *error))completion {
2394  NSDictionary *rparams = @{@"req": KBRValue(req)};
2395  [self.client sendRequestWithMethod:@"keybase.1.NotifyFSRequest.FSEditListRequest" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
2396    completion(error);
2397  }];
2398}
2399
2400- (void)fSSyncStatusRequest:(KBRFSSyncStatusRequestRequestParams *)params completion:(void (^)(NSError *error))completion {
2401  NSDictionary *rparams = @{@"req": KBRValue(params.req)};
2402  [self.client sendRequestWithMethod:@"keybase.1.NotifyFSRequest.FSSyncStatusRequest" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
2403    completion(error);
2404  }];
2405}
2406
2407- (void)fSSyncStatusRequestWithReq:(KBRFSSyncStatusRequest *)req completion:(void (^)(NSError *error))completion {
2408  NSDictionary *rparams = @{@"req": KBRValue(req)};
2409  [self.client sendRequestWithMethod:@"keybase.1.NotifyFSRequest.FSSyncStatusRequest" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
2410    completion(error);
2411  }];
2412}
2413
2414@end
2415
2416@implementation KBRNotifyKeyfamilyRequest
2417
2418- (void)keyfamilyChanged:(KBRKeyfamilyChangedRequestParams *)params completion:(void (^)(NSError *error))completion {
2419  NSDictionary *rparams = @{@"uid": KBRValue(params.uid)};
2420  [self.client sendRequestWithMethod:@"keybase.1.NotifyKeyfamily.keyfamilyChanged" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
2421    completion(error);
2422  }];
2423}
2424
2425- (void)keyfamilyChangedWithUid:(NSString *)uid completion:(void (^)(NSError *error))completion {
2426  NSDictionary *rparams = @{@"uid": KBRValue(uid)};
2427  [self.client sendRequestWithMethod:@"keybase.1.NotifyKeyfamily.keyfamilyChanged" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
2428    completion(error);
2429  }];
2430}
2431
2432@end
2433
2434@implementation KBRNotifyPaperKeyRequest
2435
2436- (void)paperKeyCached:(KBRPaperKeyCachedRequestParams *)params completion:(void (^)(NSError *error))completion {
2437  NSDictionary *rparams = @{@"uid": KBRValue(params.uid), @"encKID": KBRValue(params.encKID), @"sigKID": KBRValue(params.sigKID)};
2438  [self.client sendRequestWithMethod:@"keybase.1.NotifyPaperKey.paperKeyCached" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
2439    completion(error);
2440  }];
2441}
2442
2443- (void)paperKeyCachedWithUid:(NSString *)uid encKID:(NSString *)encKID sigKID:(NSString *)sigKID completion:(void (^)(NSError *error))completion {
2444  NSDictionary *rparams = @{@"uid": KBRValue(uid), @"encKID": KBRValue(encKID), @"sigKID": KBRValue(sigKID)};
2445  [self.client sendRequestWithMethod:@"keybase.1.NotifyPaperKey.paperKeyCached" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
2446    completion(error);
2447  }];
2448}
2449
2450@end
2451
2452@implementation KBRNotifyPGPRequest
2453
2454- (void)pgpKeyInSecretStoreFile:(void (^)(NSError *error))completion {
2455  NSDictionary *rparams = @{};
2456  [self.client sendRequestWithMethod:@"keybase.1.NotifyPGP.pgpKeyInSecretStoreFile" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
2457    completion(error);
2458  }];
2459}
2460
2461@end
2462
2463@implementation KBRNotifyServiceRequest
2464
2465- (void)shutdown:(void (^)(NSError *error))completion {
2466  NSDictionary *rparams = @{};
2467  [self.client sendRequestWithMethod:@"keybase.1.NotifyService.shutdown" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
2468    completion(error);
2469  }];
2470}
2471
2472@end
2473
2474@implementation KBRNotifySessionRequest
2475
2476- (void)loggedOut:(void (^)(NSError *error))completion {
2477  NSDictionary *rparams = @{};
2478  [self.client sendRequestWithMethod:@"keybase.1.NotifySession.loggedOut" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
2479    completion(error);
2480  }];
2481}
2482
2483- (void)loggedIn:(KBRLoggedInRequestParams *)params completion:(void (^)(NSError *error))completion {
2484  NSDictionary *rparams = @{@"username": KBRValue(params.username)};
2485  [self.client sendRequestWithMethod:@"keybase.1.NotifySession.loggedIn" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
2486    completion(error);
2487  }];
2488}
2489
2490- (void)loggedInWithUsername:(NSString *)username completion:(void (^)(NSError *error))completion {
2491  NSDictionary *rparams = @{@"username": KBRValue(username)};
2492  [self.client sendRequestWithMethod:@"keybase.1.NotifySession.loggedIn" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
2493    completion(error);
2494  }];
2495}
2496
2497- (void)clientOutOfDate:(KBRClientOutOfDateRequestParams *)params completion:(void (^)(NSError *error))completion {
2498  NSDictionary *rparams = @{@"upgradeTo": KBRValue(params.upgradeTo), @"upgradeURI": KBRValue(params.upgradeURI), @"upgradeMsg": KBRValue(params.upgradeMsg)};
2499  [self.client sendRequestWithMethod:@"keybase.1.NotifySession.clientOutOfDate" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
2500    completion(error);
2501  }];
2502}
2503
2504- (void)clientOutOfDateWithUpgradeTo:(NSString *)upgradeTo upgradeURI:(NSString *)upgradeURI upgradeMsg:(NSString *)upgradeMsg completion:(void (^)(NSError *error))completion {
2505  NSDictionary *rparams = @{@"upgradeTo": KBRValue(upgradeTo), @"upgradeURI": KBRValue(upgradeURI), @"upgradeMsg": KBRValue(upgradeMsg)};
2506  [self.client sendRequestWithMethod:@"keybase.1.NotifySession.clientOutOfDate" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
2507    completion(error);
2508  }];
2509}
2510
2511@end
2512
2513@implementation KBRNotifyTrackingRequest
2514
2515- (void)trackingChanged:(KBRTrackingChangedRequestParams *)params completion:(void (^)(NSError *error))completion {
2516  NSDictionary *rparams = @{@"uid": KBRValue(params.uid), @"username": KBRValue(params.username)};
2517  [self.client sendRequestWithMethod:@"keybase.1.NotifyTracking.trackingChanged" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
2518    completion(error);
2519  }];
2520}
2521
2522- (void)trackingChangedWithUid:(NSString *)uid username:(NSString *)username completion:(void (^)(NSError *error))completion {
2523  NSDictionary *rparams = @{@"uid": KBRValue(uid), @"username": KBRValue(username)};
2524  [self.client sendRequestWithMethod:@"keybase.1.NotifyTracking.trackingChanged" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
2525    completion(error);
2526  }];
2527}
2528
2529@end
2530
2531@implementation KBRNotifyUsersRequest
2532
2533- (void)userChanged:(KBRUserChangedRequestParams *)params completion:(void (^)(NSError *error))completion {
2534  NSDictionary *rparams = @{@"uid": KBRValue(params.uid)};
2535  [self.client sendRequestWithMethod:@"keybase.1.NotifyUsers.userChanged" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
2536    completion(error);
2537  }];
2538}
2539
2540- (void)userChangedWithUid:(NSString *)uid completion:(void (^)(NSError *error))completion {
2541  NSDictionary *rparams = @{@"uid": KBRValue(uid)};
2542  [self.client sendRequestWithMethod:@"keybase.1.NotifyUsers.userChanged" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
2543    completion(error);
2544  }];
2545}
2546
2547@end
2548
2549@implementation KBRPaperprovisionRequest
2550
2551- (void)paperProvision:(KBRPaperProvisionRequestParams *)params completion:(void (^)(NSError *error))completion {
2552  NSDictionary *rparams = @{@"username": KBRValue(params.username), @"deviceName": KBRValue(params.deviceName), @"paperKey": KBRValue(params.paperKey)};
2553  [self.client sendRequestWithMethod:@"keybase.1.paperprovision.paperProvision" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
2554    completion(error);
2555  }];
2556}
2557
2558- (void)paperProvisionWithUsername:(NSString *)username deviceName:(NSString *)deviceName paperKey:(NSString *)paperKey completion:(void (^)(NSError *error))completion {
2559  NSDictionary *rparams = @{@"username": KBRValue(username), @"deviceName": KBRValue(deviceName), @"paperKey": KBRValue(paperKey)};
2560  [self.client sendRequestWithMethod:@"keybase.1.paperprovision.paperProvision" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
2561    completion(error);
2562  }];
2563}
2564
2565@end
2566
2567@implementation KBRPassphraseCommonRequest
2568
2569@end
2570
2571@implementation KBRPgpRequest
2572
2573- (void)pgpSign:(KBRPgpSignRequestParams *)params completion:(void (^)(NSError *error))completion {
2574  NSDictionary *rparams = @{@"source": KBRValue(params.source), @"sink": KBRValue(params.sink), @"opts": KBRValue(params.opts)};
2575  [self.client sendRequestWithMethod:@"keybase.1.pgp.pgpSign" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
2576    completion(error);
2577  }];
2578}
2579
2580- (void)pgpSignWithSource:(KBRStream *)source sink:(KBRStream *)sink opts:(KBRPGPSignOptions *)opts completion:(void (^)(NSError *error))completion {
2581  NSDictionary *rparams = @{@"source": KBRValue(source), @"sink": KBRValue(sink), @"opts": KBRValue(opts)};
2582  [self.client sendRequestWithMethod:@"keybase.1.pgp.pgpSign" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
2583    completion(error);
2584  }];
2585}
2586
2587- (void)pgpPull:(KBRPgpPullRequestParams *)params completion:(void (^)(NSError *error))completion {
2588  NSDictionary *rparams = @{@"userAsserts": KBRValue(params.userAsserts)};
2589  [self.client sendRequestWithMethod:@"keybase.1.pgp.pgpPull" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
2590    completion(error);
2591  }];
2592}
2593
2594- (void)pgpPullWithUserAsserts:(NSArray *)userAsserts completion:(void (^)(NSError *error))completion {
2595  NSDictionary *rparams = @{@"userAsserts": KBRValue(userAsserts)};
2596  [self.client sendRequestWithMethod:@"keybase.1.pgp.pgpPull" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
2597    completion(error);
2598  }];
2599}
2600
2601- (void)pgpEncrypt:(KBRPgpEncryptRequestParams *)params completion:(void (^)(NSError *error))completion {
2602  NSDictionary *rparams = @{@"source": KBRValue(params.source), @"sink": KBRValue(params.sink), @"opts": KBRValue(params.opts)};
2603  [self.client sendRequestWithMethod:@"keybase.1.pgp.pgpEncrypt" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
2604    completion(error);
2605  }];
2606}
2607
2608- (void)pgpEncryptWithSource:(KBRStream *)source sink:(KBRStream *)sink opts:(KBRPGPEncryptOptions *)opts completion:(void (^)(NSError *error))completion {
2609  NSDictionary *rparams = @{@"source": KBRValue(source), @"sink": KBRValue(sink), @"opts": KBRValue(opts)};
2610  [self.client sendRequestWithMethod:@"keybase.1.pgp.pgpEncrypt" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
2611    completion(error);
2612  }];
2613}
2614
2615- (void)pgpDecrypt:(KBRPgpDecryptRequestParams *)params completion:(void (^)(NSError *error, KBRPGPSigVerification *pGPSigVerification))completion {
2616  NSDictionary *rparams = @{@"source": KBRValue(params.source), @"sink": KBRValue(params.sink), @"opts": KBRValue(params.opts)};
2617  [self.client sendRequestWithMethod:@"keybase.1.pgp.pgpDecrypt" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
2618    if (error) {
2619      completion(error, nil);
2620      return;
2621    }
2622    KBRPGPSigVerification *result = retval ? [MTLJSONAdapter modelOfClass:KBRPGPSigVerification.class fromJSONDictionary:retval error:&error] : nil;
2623    completion(error, result);
2624  }];
2625}
2626
2627- (void)pgpDecryptWithSource:(KBRStream *)source sink:(KBRStream *)sink opts:(KBRPGPDecryptOptions *)opts completion:(void (^)(NSError *error, KBRPGPSigVerification *pGPSigVerification))completion {
2628  NSDictionary *rparams = @{@"source": KBRValue(source), @"sink": KBRValue(sink), @"opts": KBRValue(opts)};
2629  [self.client sendRequestWithMethod:@"keybase.1.pgp.pgpDecrypt" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
2630    if (error) {
2631      completion(error, nil);
2632      return;
2633    }
2634    KBRPGPSigVerification *result = retval ? [MTLJSONAdapter modelOfClass:KBRPGPSigVerification.class fromJSONDictionary:retval error:&error] : nil;
2635    completion(error, result);
2636  }];
2637}
2638
2639- (void)pgpVerify:(KBRPgpVerifyRequestParams *)params completion:(void (^)(NSError *error, KBRPGPSigVerification *pGPSigVerification))completion {
2640  NSDictionary *rparams = @{@"source": KBRValue(params.source), @"opts": KBRValue(params.opts)};
2641  [self.client sendRequestWithMethod:@"keybase.1.pgp.pgpVerify" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
2642    if (error) {
2643      completion(error, nil);
2644      return;
2645    }
2646    KBRPGPSigVerification *result = retval ? [MTLJSONAdapter modelOfClass:KBRPGPSigVerification.class fromJSONDictionary:retval error:&error] : nil;
2647    completion(error, result);
2648  }];
2649}
2650
2651- (void)pgpVerifyWithSource:(KBRStream *)source opts:(KBRPGPVerifyOptions *)opts completion:(void (^)(NSError *error, KBRPGPSigVerification *pGPSigVerification))completion {
2652  NSDictionary *rparams = @{@"source": KBRValue(source), @"opts": KBRValue(opts)};
2653  [self.client sendRequestWithMethod:@"keybase.1.pgp.pgpVerify" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
2654    if (error) {
2655      completion(error, nil);
2656      return;
2657    }
2658    KBRPGPSigVerification *result = retval ? [MTLJSONAdapter modelOfClass:KBRPGPSigVerification.class fromJSONDictionary:retval error:&error] : nil;
2659    completion(error, result);
2660  }];
2661}
2662
2663- (void)pgpImport:(KBRPgpImportRequestParams *)params completion:(void (^)(NSError *error))completion {
2664  NSDictionary *rparams = @{@"key": KBRValue(params.key), @"pushSecret": @(params.pushSecret)};
2665  [self.client sendRequestWithMethod:@"keybase.1.pgp.pgpImport" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
2666    completion(error);
2667  }];
2668}
2669
2670- (void)pgpImportWithKey:(NSData *)key pushSecret:(BOOL)pushSecret completion:(void (^)(NSError *error))completion {
2671  NSDictionary *rparams = @{@"key": KBRValue(key), @"pushSecret": @(pushSecret)};
2672  [self.client sendRequestWithMethod:@"keybase.1.pgp.pgpImport" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
2673    completion(error);
2674  }];
2675}
2676
2677- (void)pgpExport:(KBRPgpExportRequestParams *)params completion:(void (^)(NSError *error, NSArray *items))completion {
2678  NSDictionary *rparams = @{@"options": KBRValue(params.options)};
2679  [self.client sendRequestWithMethod:@"keybase.1.pgp.pgpExport" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
2680    if (error) {
2681      completion(error, nil);
2682      return;
2683    }
2684    NSArray *results = retval ? [MTLJSONAdapter modelsOfClass:KBRKeyInfo.class fromJSONArray:retval error:&error] : nil;
2685    completion(error, results);
2686  }];
2687}
2688
2689- (void)pgpExportWithOptions:(KBRPGPQuery *)options completion:(void (^)(NSError *error, NSArray *items))completion {
2690  NSDictionary *rparams = @{@"options": KBRValue(options)};
2691  [self.client sendRequestWithMethod:@"keybase.1.pgp.pgpExport" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
2692    if (error) {
2693      completion(error, nil);
2694      return;
2695    }
2696    NSArray *results = retval ? [MTLJSONAdapter modelsOfClass:KBRKeyInfo.class fromJSONArray:retval error:&error] : nil;
2697    completion(error, results);
2698  }];
2699}
2700
2701- (void)pgpExportByFingerprint:(KBRPgpExportByFingerprintRequestParams *)params completion:(void (^)(NSError *error, NSArray *items))completion {
2702  NSDictionary *rparams = @{@"options": KBRValue(params.options)};
2703  [self.client sendRequestWithMethod:@"keybase.1.pgp.pgpExportByFingerprint" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
2704    if (error) {
2705      completion(error, nil);
2706      return;
2707    }
2708    NSArray *results = retval ? [MTLJSONAdapter modelsOfClass:KBRKeyInfo.class fromJSONArray:retval error:&error] : nil;
2709    completion(error, results);
2710  }];
2711}
2712
2713- (void)pgpExportByFingerprintWithOptions:(KBRPGPQuery *)options completion:(void (^)(NSError *error, NSArray *items))completion {
2714  NSDictionary *rparams = @{@"options": KBRValue(options)};
2715  [self.client sendRequestWithMethod:@"keybase.1.pgp.pgpExportByFingerprint" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
2716    if (error) {
2717      completion(error, nil);
2718      return;
2719    }
2720    NSArray *results = retval ? [MTLJSONAdapter modelsOfClass:KBRKeyInfo.class fromJSONArray:retval error:&error] : nil;
2721    completion(error, results);
2722  }];
2723}
2724
2725- (void)pgpExportByKID:(KBRPgpExportByKIDRequestParams *)params completion:(void (^)(NSError *error, NSArray *items))completion {
2726  NSDictionary *rparams = @{@"options": KBRValue(params.options)};
2727  [self.client sendRequestWithMethod:@"keybase.1.pgp.pgpExportByKID" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
2728    if (error) {
2729      completion(error, nil);
2730      return;
2731    }
2732    NSArray *results = retval ? [MTLJSONAdapter modelsOfClass:KBRKeyInfo.class fromJSONArray:retval error:&error] : nil;
2733    completion(error, results);
2734  }];
2735}
2736
2737- (void)pgpExportByKIDWithOptions:(KBRPGPQuery *)options completion:(void (^)(NSError *error, NSArray *items))completion {
2738  NSDictionary *rparams = @{@"options": KBRValue(options)};
2739  [self.client sendRequestWithMethod:@"keybase.1.pgp.pgpExportByKID" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
2740    if (error) {
2741      completion(error, nil);
2742      return;
2743    }
2744    NSArray *results = retval ? [MTLJSONAdapter modelsOfClass:KBRKeyInfo.class fromJSONArray:retval error:&error] : nil;
2745    completion(error, results);
2746  }];
2747}
2748
2749- (void)pgpKeyGen:(KBRPgpKeyGenRequestParams *)params completion:(void (^)(NSError *error))completion {
2750  NSDictionary *rparams = @{@"primaryBits": @(params.primaryBits), @"subkeyBits": @(params.subkeyBits), @"createUids": KBRValue(params.createUids), @"allowMulti": @(params.allowMulti), @"doExport": @(params.doExport), @"pushSecret": @(params.pushSecret)};
2751  [self.client sendRequestWithMethod:@"keybase.1.pgp.pgpKeyGen" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
2752    completion(error);
2753  }];
2754}
2755
2756- (void)pgpKeyGenWithPrimaryBits:(NSInteger)primaryBits subkeyBits:(NSInteger)subkeyBits createUids:(KBRPGPCreateUids *)createUids allowMulti:(BOOL)allowMulti doExport:(BOOL)doExport pushSecret:(BOOL)pushSecret completion:(void (^)(NSError *error))completion {
2757  NSDictionary *rparams = @{@"primaryBits": @(primaryBits), @"subkeyBits": @(subkeyBits), @"createUids": KBRValue(createUids), @"allowMulti": @(allowMulti), @"doExport": @(doExport), @"pushSecret": @(pushSecret)};
2758  [self.client sendRequestWithMethod:@"keybase.1.pgp.pgpKeyGen" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
2759    completion(error);
2760  }];
2761}
2762
2763- (void)pgpKeyGenDefault:(KBRPgpKeyGenDefaultRequestParams *)params completion:(void (^)(NSError *error))completion {
2764  NSDictionary *rparams = @{@"createUids": KBRValue(params.createUids)};
2765  [self.client sendRequestWithMethod:@"keybase.1.pgp.pgpKeyGenDefault" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
2766    completion(error);
2767  }];
2768}
2769
2770- (void)pgpKeyGenDefaultWithCreateUids:(KBRPGPCreateUids *)createUids completion:(void (^)(NSError *error))completion {
2771  NSDictionary *rparams = @{@"createUids": KBRValue(createUids)};
2772  [self.client sendRequestWithMethod:@"keybase.1.pgp.pgpKeyGenDefault" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
2773    completion(error);
2774  }];
2775}
2776
2777- (void)pgpDeletePrimary:(void (^)(NSError *error))completion {
2778  NSDictionary *rparams = @{};
2779  [self.client sendRequestWithMethod:@"keybase.1.pgp.pgpDeletePrimary" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
2780    completion(error);
2781  }];
2782}
2783
2784- (void)pgpSelect:(KBRPgpSelectRequestParams *)params completion:(void (^)(NSError *error))completion {
2785  NSDictionary *rparams = @{@"fingerprintQuery": KBRValue(params.fingerprintQuery), @"allowMulti": @(params.allowMulti), @"skipImport": @(params.skipImport), @"onlyImport": @(params.onlyImport)};
2786  [self.client sendRequestWithMethod:@"keybase.1.pgp.pgpSelect" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
2787    completion(error);
2788  }];
2789}
2790
2791- (void)pgpSelectWithFingerprintQuery:(NSString *)fingerprintQuery allowMulti:(BOOL)allowMulti skipImport:(BOOL)skipImport onlyImport:(BOOL)onlyImport completion:(void (^)(NSError *error))completion {
2792  NSDictionary *rparams = @{@"fingerprintQuery": KBRValue(fingerprintQuery), @"allowMulti": @(allowMulti), @"skipImport": @(skipImport), @"onlyImport": @(onlyImport)};
2793  [self.client sendRequestWithMethod:@"keybase.1.pgp.pgpSelect" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
2794    completion(error);
2795  }];
2796}
2797
2798- (void)pgpUpdate:(KBRPgpUpdateRequestParams *)params completion:(void (^)(NSError *error))completion {
2799  NSDictionary *rparams = @{@"all": @(params.all), @"fingerprints": KBRValue(params.fingerprints)};
2800  [self.client sendRequestWithMethod:@"keybase.1.pgp.pgpUpdate" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
2801    completion(error);
2802  }];
2803}
2804
2805- (void)pgpUpdateWithAll:(BOOL)all fingerprints:(NSArray *)fingerprints completion:(void (^)(NSError *error))completion {
2806  NSDictionary *rparams = @{@"all": @(all), @"fingerprints": KBRValue(fingerprints)};
2807  [self.client sendRequestWithMethod:@"keybase.1.pgp.pgpUpdate" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
2808    completion(error);
2809  }];
2810}
2811
2812- (void)pgpPurge:(KBRPgpPurgeRequestParams *)params completion:(void (^)(NSError *error, KBRPGPPurgeRes *pGPPurgeRes))completion {
2813  NSDictionary *rparams = @{@"doPurge": @(params.doPurge)};
2814  [self.client sendRequestWithMethod:@"keybase.1.pgp.pgpPurge" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
2815    if (error) {
2816      completion(error, nil);
2817      return;
2818    }
2819    KBRPGPPurgeRes *result = retval ? [MTLJSONAdapter modelOfClass:KBRPGPPurgeRes.class fromJSONDictionary:retval error:&error] : nil;
2820    completion(error, result);
2821  }];
2822}
2823
2824- (void)pgpPurgeWithDoPurge:(BOOL)doPurge completion:(void (^)(NSError *error, KBRPGPPurgeRes *pGPPurgeRes))completion {
2825  NSDictionary *rparams = @{@"doPurge": @(doPurge)};
2826  [self.client sendRequestWithMethod:@"keybase.1.pgp.pgpPurge" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
2827    if (error) {
2828      completion(error, nil);
2829      return;
2830    }
2831    KBRPGPPurgeRes *result = retval ? [MTLJSONAdapter modelOfClass:KBRPGPPurgeRes.class fromJSONDictionary:retval error:&error] : nil;
2832    completion(error, result);
2833  }];
2834}
2835
2836- (void)pgpStorageDismiss:(void (^)(NSError *error))completion {
2837  NSDictionary *rparams = @{};
2838  [self.client sendRequestWithMethod:@"keybase.1.pgp.pgpStorageDismiss" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
2839    completion(error);
2840  }];
2841}
2842
2843@end
2844
2845@implementation KBRPgpUiRequest
2846
2847- (void)outputSignatureSuccess:(KBROutputSignatureSuccessRequestParams *)params completion:(void (^)(NSError *error))completion {
2848  NSDictionary *rparams = @{@"fingerprint": KBRValue(params.fingerprint), @"username": KBRValue(params.username), @"signedAt": @(params.signedAt)};
2849  [self.client sendRequestWithMethod:@"keybase.1.pgpUi.outputSignatureSuccess" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
2850    completion(error);
2851  }];
2852}
2853
2854- (void)outputSignatureSuccessWithFingerprint:(NSString *)fingerprint username:(NSString *)username signedAt:(int64_t)signedAt completion:(void (^)(NSError *error))completion {
2855  NSDictionary *rparams = @{@"fingerprint": KBRValue(fingerprint), @"username": KBRValue(username), @"signedAt": @(signedAt)};
2856  [self.client sendRequestWithMethod:@"keybase.1.pgpUi.outputSignatureSuccess" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
2857    completion(error);
2858  }];
2859}
2860
2861- (void)outputSignatureSuccessNonKeybase:(KBROutputSignatureSuccessNonKeybaseRequestParams *)params completion:(void (^)(NSError *error))completion {
2862  NSDictionary *rparams = @{@"keyID": KBRValue(params.keyID), @"signedAt": @(params.signedAt)};
2863  [self.client sendRequestWithMethod:@"keybase.1.pgpUi.outputSignatureSuccessNonKeybase" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
2864    completion(error);
2865  }];
2866}
2867
2868- (void)outputSignatureSuccessNonKeybaseWithKeyID:(NSString *)keyID signedAt:(int64_t)signedAt completion:(void (^)(NSError *error))completion {
2869  NSDictionary *rparams = @{@"keyID": KBRValue(keyID), @"signedAt": @(signedAt)};
2870  [self.client sendRequestWithMethod:@"keybase.1.pgpUi.outputSignatureSuccessNonKeybase" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
2871    completion(error);
2872  }];
2873}
2874
2875- (void)keyGenerated:(KBRKeyGeneratedRequestParams *)params completion:(void (^)(NSError *error))completion {
2876  NSDictionary *rparams = @{@"kid": KBRValue(params.kid), @"key": KBRValue(params.key)};
2877  [self.client sendRequestWithMethod:@"keybase.1.pgpUi.keyGenerated" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
2878    completion(error);
2879  }];
2880}
2881
2882- (void)keyGeneratedWithKid:(NSString *)kid key:(KBRKeyInfo *)key completion:(void (^)(NSError *error))completion {
2883  NSDictionary *rparams = @{@"kid": KBRValue(kid), @"key": KBRValue(key)};
2884  [self.client sendRequestWithMethod:@"keybase.1.pgpUi.keyGenerated" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
2885    completion(error);
2886  }];
2887}
2888
2889- (void)shouldPushPrivate:(void (^)(NSError *error, BOOL b))completion {
2890  NSDictionary *rparams = @{};
2891  [self.client sendRequestWithMethod:@"keybase.1.pgpUi.shouldPushPrivate" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
2892    completion(error, 0);
2893  }];
2894}
2895
2896- (void)finished:(void (^)(NSError *error))completion {
2897  NSDictionary *rparams = @{};
2898  [self.client sendRequestWithMethod:@"keybase.1.pgpUi.finished" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
2899    completion(error);
2900  }];
2901}
2902
2903@end
2904
2905@implementation KBRProcessRequest
2906
2907@end
2908
2909@implementation KBRProveRequest
2910
2911- (void)startProof:(KBRStartProofRequestParams *)params completion:(void (^)(NSError *error, KBRStartProofResult *startProofResult))completion {
2912  NSDictionary *rparams = @{@"service": KBRValue(params.service), @"username": KBRValue(params.username), @"force": @(params.force), @"promptPosted": @(params.promptPosted), @"auto": @(params.automatic)};
2913  [self.client sendRequestWithMethod:@"keybase.1.prove.startProof" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
2914    if (error) {
2915      completion(error, nil);
2916      return;
2917    }
2918    KBRStartProofResult *result = retval ? [MTLJSONAdapter modelOfClass:KBRStartProofResult.class fromJSONDictionary:retval error:&error] : nil;
2919    completion(error, result);
2920  }];
2921}
2922
2923- (void)startProofWithService:(NSString *)service username:(NSString *)username force:(BOOL)force promptPosted:(BOOL)promptPosted automatic:(BOOL)automatic completion:(void (^)(NSError *error, KBRStartProofResult *startProofResult))completion {
2924  NSDictionary *rparams = @{@"service": KBRValue(service), @"username": KBRValue(username), @"force": @(force), @"promptPosted": @(promptPosted), @"auto": @(automatic)};
2925  [self.client sendRequestWithMethod:@"keybase.1.prove.startProof" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
2926    if (error) {
2927      completion(error, nil);
2928      return;
2929    }
2930    KBRStartProofResult *result = retval ? [MTLJSONAdapter modelOfClass:KBRStartProofResult.class fromJSONDictionary:retval error:&error] : nil;
2931    completion(error, result);
2932  }];
2933}
2934
2935- (void)checkProof:(KBRCheckProofRequestParams *)params completion:(void (^)(NSError *error, KBRCheckProofStatus *checkProofStatus))completion {
2936  NSDictionary *rparams = @{@"sigID": KBRValue(params.sigID)};
2937  [self.client sendRequestWithMethod:@"keybase.1.prove.checkProof" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
2938    if (error) {
2939      completion(error, nil);
2940      return;
2941    }
2942    KBRCheckProofStatus *result = retval ? [MTLJSONAdapter modelOfClass:KBRCheckProofStatus.class fromJSONDictionary:retval error:&error] : nil;
2943    completion(error, result);
2944  }];
2945}
2946
2947- (void)checkProofWithSigID:(NSString *)sigID completion:(void (^)(NSError *error, KBRCheckProofStatus *checkProofStatus))completion {
2948  NSDictionary *rparams = @{@"sigID": KBRValue(sigID)};
2949  [self.client sendRequestWithMethod:@"keybase.1.prove.checkProof" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
2950    if (error) {
2951      completion(error, nil);
2952      return;
2953    }
2954    KBRCheckProofStatus *result = retval ? [MTLJSONAdapter modelOfClass:KBRCheckProofStatus.class fromJSONDictionary:retval error:&error] : nil;
2955    completion(error, result);
2956  }];
2957}
2958
2959@end
2960
2961@implementation KBRProveUiRequest
2962
2963- (void)promptOverwrite:(KBRPromptOverwriteRequestParams *)params completion:(void (^)(NSError *error, BOOL b))completion {
2964  NSDictionary *rparams = @{@"account": KBRValue(params.account), @"typ": @(params.typ)};
2965  [self.client sendRequestWithMethod:@"keybase.1.proveUi.promptOverwrite" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
2966    completion(error, 0);
2967  }];
2968}
2969
2970- (void)promptOverwriteWithAccount:(NSString *)account typ:(KBRPromptOverwriteType)typ completion:(void (^)(NSError *error, BOOL b))completion {
2971  NSDictionary *rparams = @{@"account": KBRValue(account), @"typ": @(typ)};
2972  [self.client sendRequestWithMethod:@"keybase.1.proveUi.promptOverwrite" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
2973    completion(error, 0);
2974  }];
2975}
2976
2977- (void)promptUsername:(KBRPromptUsernameRequestParams *)params completion:(void (^)(NSError *error, NSString *str))completion {
2978  NSDictionary *rparams = @{@"prompt": KBRValue(params.prompt), @"prevError": KBRValue(params.prevError)};
2979  [self.client sendRequestWithMethod:@"keybase.1.proveUi.promptUsername" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
2980    if (error) {
2981      completion(error, nil);
2982      return;
2983    }
2984    NSString *result = retval ? [MTLJSONAdapter modelOfClass:NSString.class fromJSONDictionary:retval error:&error] : nil;
2985    completion(error, result);
2986  }];
2987}
2988
2989- (void)promptUsernameWithPrompt:(NSString *)prompt prevError:(KBRStatus *)prevError completion:(void (^)(NSError *error, NSString *str))completion {
2990  NSDictionary *rparams = @{@"prompt": KBRValue(prompt), @"prevError": KBRValue(prevError)};
2991  [self.client sendRequestWithMethod:@"keybase.1.proveUi.promptUsername" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
2992    if (error) {
2993      completion(error, nil);
2994      return;
2995    }
2996    NSString *result = retval ? [MTLJSONAdapter modelOfClass:NSString.class fromJSONDictionary:retval error:&error] : nil;
2997    completion(error, result);
2998  }];
2999}
3000
3001- (void)outputPrechecks:(KBROutputPrechecksRequestParams *)params completion:(void (^)(NSError *error))completion {
3002  NSDictionary *rparams = @{@"text": KBRValue(params.text)};
3003  [self.client sendRequestWithMethod:@"keybase.1.proveUi.outputPrechecks" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
3004    completion(error);
3005  }];
3006}
3007
3008- (void)outputPrechecksWithText:(KBRText *)text completion:(void (^)(NSError *error))completion {
3009  NSDictionary *rparams = @{@"text": KBRValue(text)};
3010  [self.client sendRequestWithMethod:@"keybase.1.proveUi.outputPrechecks" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
3011    completion(error);
3012  }];
3013}
3014
3015- (void)preProofWarning:(KBRPreProofWarningRequestParams *)params completion:(void (^)(NSError *error, BOOL b))completion {
3016  NSDictionary *rparams = @{@"text": KBRValue(params.text)};
3017  [self.client sendRequestWithMethod:@"keybase.1.proveUi.preProofWarning" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
3018    completion(error, 0);
3019  }];
3020}
3021
3022- (void)preProofWarningWithText:(KBRText *)text completion:(void (^)(NSError *error, BOOL b))completion {
3023  NSDictionary *rparams = @{@"text": KBRValue(text)};
3024  [self.client sendRequestWithMethod:@"keybase.1.proveUi.preProofWarning" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
3025    completion(error, 0);
3026  }];
3027}
3028
3029- (void)outputInstructions:(KBROutputInstructionsRequestParams *)params completion:(void (^)(NSError *error))completion {
3030  NSDictionary *rparams = @{@"instructions": KBRValue(params.instructions), @"proof": KBRValue(params.proof)};
3031  [self.client sendRequestWithMethod:@"keybase.1.proveUi.outputInstructions" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
3032    completion(error);
3033  }];
3034}
3035
3036- (void)outputInstructionsWithInstructions:(KBRText *)instructions proof:(NSString *)proof completion:(void (^)(NSError *error))completion {
3037  NSDictionary *rparams = @{@"instructions": KBRValue(instructions), @"proof": KBRValue(proof)};
3038  [self.client sendRequestWithMethod:@"keybase.1.proveUi.outputInstructions" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
3039    completion(error);
3040  }];
3041}
3042
3043- (void)okToCheck:(KBROkToCheckRequestParams *)params completion:(void (^)(NSError *error, BOOL b))completion {
3044  NSDictionary *rparams = @{@"name": KBRValue(params.name), @"attempt": @(params.attempt)};
3045  [self.client sendRequestWithMethod:@"keybase.1.proveUi.okToCheck" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
3046    completion(error, 0);
3047  }];
3048}
3049
3050- (void)okToCheckWithName:(NSString *)name attempt:(NSInteger)attempt completion:(void (^)(NSError *error, BOOL b))completion {
3051  NSDictionary *rparams = @{@"name": KBRValue(name), @"attempt": @(attempt)};
3052  [self.client sendRequestWithMethod:@"keybase.1.proveUi.okToCheck" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
3053    completion(error, 0);
3054  }];
3055}
3056
3057- (void)displayRecheckWarning:(KBRDisplayRecheckWarningRequestParams *)params completion:(void (^)(NSError *error))completion {
3058  NSDictionary *rparams = @{@"text": KBRValue(params.text)};
3059  [self.client sendRequestWithMethod:@"keybase.1.proveUi.displayRecheckWarning" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
3060    completion(error);
3061  }];
3062}
3063
3064- (void)displayRecheckWarningWithText:(KBRText *)text completion:(void (^)(NSError *error))completion {
3065  NSDictionary *rparams = @{@"text": KBRValue(text)};
3066  [self.client sendRequestWithMethod:@"keybase.1.proveUi.displayRecheckWarning" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
3067    completion(error);
3068  }];
3069}
3070
3071@end
3072
3073@implementation KBRProvisionUiRequest
3074
3075- (void)chooseProvisioningMethod:(KBRChooseProvisioningMethodRequestParams *)params completion:(void (^)(NSError *error, KBRProvisionMethod provisionMethod))completion {
3076  NSDictionary *rparams = @{@"gpgOption": @(params.gpgOption)};
3077  [self.client sendRequestWithMethod:@"keybase.1.provisionUi.chooseProvisioningMethod" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
3078    completion(error, [retval integerValue]);
3079  }];
3080}
3081
3082- (void)chooseProvisioningMethodWithGpgOption:(BOOL)gpgOption completion:(void (^)(NSError *error, KBRProvisionMethod provisionMethod))completion {
3083  NSDictionary *rparams = @{@"gpgOption": @(gpgOption)};
3084  [self.client sendRequestWithMethod:@"keybase.1.provisionUi.chooseProvisioningMethod" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
3085    completion(error, [retval integerValue]);
3086  }];
3087}
3088
3089- (void)chooseGPGMethod:(KBRChooseGPGMethodRequestParams *)params completion:(void (^)(NSError *error, KBRGPGMethod gPGMethod))completion {
3090  NSDictionary *rparams = @{@"keys": KBRValue(params.keys)};
3091  [self.client sendRequestWithMethod:@"keybase.1.provisionUi.chooseGPGMethod" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
3092    completion(error, [retval integerValue]);
3093  }];
3094}
3095
3096- (void)chooseGPGMethodWithKeys:(NSArray *)keys completion:(void (^)(NSError *error, KBRGPGMethod gPGMethod))completion {
3097  NSDictionary *rparams = @{@"keys": KBRValue(keys)};
3098  [self.client sendRequestWithMethod:@"keybase.1.provisionUi.chooseGPGMethod" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
3099    completion(error, [retval integerValue]);
3100  }];
3101}
3102
3103- (void)switchToGPGSignOK:(KBRSwitchToGPGSignOKRequestParams *)params completion:(void (^)(NSError *error, BOOL b))completion {
3104  NSDictionary *rparams = @{@"key": KBRValue(params.key), @"importError": KBRValue(params.importError)};
3105  [self.client sendRequestWithMethod:@"keybase.1.provisionUi.switchToGPGSignOK" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
3106    completion(error, 0);
3107  }];
3108}
3109
3110- (void)switchToGPGSignOKWithKey:(KBRGPGKey *)key importError:(NSString *)importError completion:(void (^)(NSError *error, BOOL b))completion {
3111  NSDictionary *rparams = @{@"key": KBRValue(key), @"importError": KBRValue(importError)};
3112  [self.client sendRequestWithMethod:@"keybase.1.provisionUi.switchToGPGSignOK" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
3113    completion(error, 0);
3114  }];
3115}
3116
3117- (void)chooseDevice:(KBRChooseDeviceRequestParams *)params completion:(void (^)(NSError *error, NSString *deviceID))completion {
3118  NSDictionary *rparams = @{@"devices": KBRValue(params.devices)};
3119  [self.client sendRequestWithMethod:@"keybase.1.provisionUi.chooseDevice" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
3120    if (error) {
3121      completion(error, nil);
3122      return;
3123    }
3124    NSString *result = retval ? [MTLJSONAdapter modelOfClass:NSString.class fromJSONDictionary:retval error:&error] : nil;
3125    completion(error, result);
3126  }];
3127}
3128
3129- (void)chooseDeviceWithDevices:(NSArray *)devices completion:(void (^)(NSError *error, NSString *deviceID))completion {
3130  NSDictionary *rparams = @{@"devices": KBRValue(devices)};
3131  [self.client sendRequestWithMethod:@"keybase.1.provisionUi.chooseDevice" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
3132    if (error) {
3133      completion(error, nil);
3134      return;
3135    }
3136    NSString *result = retval ? [MTLJSONAdapter modelOfClass:NSString.class fromJSONDictionary:retval error:&error] : nil;
3137    completion(error, result);
3138  }];
3139}
3140
3141- (void)chooseDeviceType:(KBRChooseDeviceTypeRequestParams *)params completion:(void (^)(NSError *error, KBRDeviceType deviceType))completion {
3142  NSDictionary *rparams = @{@"kind": @(params.kind)};
3143  [self.client sendRequestWithMethod:@"keybase.1.provisionUi.chooseDeviceType" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
3144    completion(error, [retval integerValue]);
3145  }];
3146}
3147
3148- (void)chooseDeviceTypeWithKind:(KBRChooseType)kind completion:(void (^)(NSError *error, KBRDeviceType deviceType))completion {
3149  NSDictionary *rparams = @{@"kind": @(kind)};
3150  [self.client sendRequestWithMethod:@"keybase.1.provisionUi.chooseDeviceType" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
3151    completion(error, [retval integerValue]);
3152  }];
3153}
3154
3155- (void)displayAndPromptSecret:(KBRDisplayAndPromptSecretRequestParams *)params completion:(void (^)(NSError *error, KBRSecretResponse *secretResponse))completion {
3156  NSDictionary *rparams = @{@"secret": KBRValue(params.secret), @"phrase": KBRValue(params.phrase), @"otherDeviceType": @(params.otherDeviceType)};
3157  [self.client sendRequestWithMethod:@"keybase.1.provisionUi.DisplayAndPromptSecret" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
3158    if (error) {
3159      completion(error, nil);
3160      return;
3161    }
3162    KBRSecretResponse *result = retval ? [MTLJSONAdapter modelOfClass:KBRSecretResponse.class fromJSONDictionary:retval error:&error] : nil;
3163    completion(error, result);
3164  }];
3165}
3166
3167- (void)displayAndPromptSecretWithSecret:(NSData *)secret phrase:(NSString *)phrase otherDeviceType:(KBRDeviceType)otherDeviceType completion:(void (^)(NSError *error, KBRSecretResponse *secretResponse))completion {
3168  NSDictionary *rparams = @{@"secret": KBRValue(secret), @"phrase": KBRValue(phrase), @"otherDeviceType": @(otherDeviceType)};
3169  [self.client sendRequestWithMethod:@"keybase.1.provisionUi.DisplayAndPromptSecret" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
3170    if (error) {
3171      completion(error, nil);
3172      return;
3173    }
3174    KBRSecretResponse *result = retval ? [MTLJSONAdapter modelOfClass:KBRSecretResponse.class fromJSONDictionary:retval error:&error] : nil;
3175    completion(error, result);
3176  }];
3177}
3178
3179- (void)displaySecretExchanged:(void (^)(NSError *error))completion {
3180  NSDictionary *rparams = @{};
3181  [self.client sendRequestWithMethod:@"keybase.1.provisionUi.DisplaySecretExchanged" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
3182    completion(error);
3183  }];
3184}
3185
3186- (void)promptNewDeviceName:(KBRPromptNewDeviceNameRequestParams *)params completion:(void (^)(NSError *error, NSString *str))completion {
3187  NSDictionary *rparams = @{@"existingDevices": KBRValue(params.existingDevices), @"errorMessage": KBRValue(params.errorMessage)};
3188  [self.client sendRequestWithMethod:@"keybase.1.provisionUi.PromptNewDeviceName" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
3189    if (error) {
3190      completion(error, nil);
3191      return;
3192    }
3193    NSString *result = retval ? [MTLJSONAdapter modelOfClass:NSString.class fromJSONDictionary:retval error:&error] : nil;
3194    completion(error, result);
3195  }];
3196}
3197
3198- (void)promptNewDeviceNameWithExistingDevices:(NSArray *)existingDevices errorMessage:(NSString *)errorMessage completion:(void (^)(NSError *error, NSString *str))completion {
3199  NSDictionary *rparams = @{@"existingDevices": KBRValue(existingDevices), @"errorMessage": KBRValue(errorMessage)};
3200  [self.client sendRequestWithMethod:@"keybase.1.provisionUi.PromptNewDeviceName" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
3201    if (error) {
3202      completion(error, nil);
3203      return;
3204    }
3205    NSString *result = retval ? [MTLJSONAdapter modelOfClass:NSString.class fromJSONDictionary:retval error:&error] : nil;
3206    completion(error, result);
3207  }];
3208}
3209
3210- (void)provisioneeSuccess:(KBRProvisioneeSuccessRequestParams *)params completion:(void (^)(NSError *error))completion {
3211  NSDictionary *rparams = @{@"username": KBRValue(params.username), @"deviceName": KBRValue(params.deviceName)};
3212  [self.client sendRequestWithMethod:@"keybase.1.provisionUi.ProvisioneeSuccess" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
3213    completion(error);
3214  }];
3215}
3216
3217- (void)provisioneeSuccessWithUsername:(NSString *)username deviceName:(NSString *)deviceName completion:(void (^)(NSError *error))completion {
3218  NSDictionary *rparams = @{@"username": KBRValue(username), @"deviceName": KBRValue(deviceName)};
3219  [self.client sendRequestWithMethod:@"keybase.1.provisionUi.ProvisioneeSuccess" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
3220    completion(error);
3221  }];
3222}
3223
3224- (void)provisionerSuccess:(KBRProvisionerSuccessRequestParams *)params completion:(void (^)(NSError *error))completion {
3225  NSDictionary *rparams = @{@"deviceName": KBRValue(params.deviceName), @"deviceType": KBRValue(params.deviceType)};
3226  [self.client sendRequestWithMethod:@"keybase.1.provisionUi.ProvisionerSuccess" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
3227    completion(error);
3228  }];
3229}
3230
3231- (void)provisionerSuccessWithDeviceName:(NSString *)deviceName deviceType:(NSString *)deviceType completion:(void (^)(NSError *error))completion {
3232  NSDictionary *rparams = @{@"deviceName": KBRValue(deviceName), @"deviceType": KBRValue(deviceType)};
3233  [self.client sendRequestWithMethod:@"keybase.1.provisionUi.ProvisionerSuccess" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
3234    completion(error);
3235  }];
3236}
3237
3238@end
3239
3240@implementation KBRQuotaRequest
3241
3242- (void)verifySession:(KBRVerifySessionRequestParams *)params completion:(void (^)(NSError *error, KBRVerifySessionRes *verifySessionRes))completion {
3243  NSDictionary *rparams = @{@"session": KBRValue(params.session)};
3244  [self.client sendRequestWithMethod:@"keybase.1.quota.verifySession" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
3245    if (error) {
3246      completion(error, nil);
3247      return;
3248    }
3249    KBRVerifySessionRes *result = retval ? [MTLJSONAdapter modelOfClass:KBRVerifySessionRes.class fromJSONDictionary:retval error:&error] : nil;
3250    completion(error, result);
3251  }];
3252}
3253
3254- (void)verifySessionWithSession:(NSString *)session completion:(void (^)(NSError *error, KBRVerifySessionRes *verifySessionRes))completion {
3255  NSDictionary *rparams = @{@"session": KBRValue(session)};
3256  [self.client sendRequestWithMethod:@"keybase.1.quota.verifySession" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
3257    if (error) {
3258      completion(error, nil);
3259      return;
3260    }
3261    KBRVerifySessionRes *result = retval ? [MTLJSONAdapter modelOfClass:KBRVerifySessionRes.class fromJSONDictionary:retval error:&error] : nil;
3262    completion(error, result);
3263  }];
3264}
3265
3266@end
3267
3268@implementation KBRReachabilityRequest
3269
3270- (void)reachabilityChanged:(KBRReachabilityChangedRequestParams *)params completion:(void (^)(NSError *error))completion {
3271  NSDictionary *rparams = @{@"reachability": KBRValue(params.reachability)};
3272  [self.client sendRequestWithMethod:@"keybase.1.reachability.reachabilityChanged" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
3273    completion(error);
3274  }];
3275}
3276
3277- (void)reachabilityChangedWithReachability:(KBRReachability *)reachability completion:(void (^)(NSError *error))completion {
3278  NSDictionary *rparams = @{@"reachability": KBRValue(reachability)};
3279  [self.client sendRequestWithMethod:@"keybase.1.reachability.reachabilityChanged" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
3280    completion(error);
3281  }];
3282}
3283
3284- (void)startReachability:(void (^)(NSError *error, KBRReachability *reachability))completion {
3285  NSDictionary *rparams = @{};
3286  [self.client sendRequestWithMethod:@"keybase.1.reachability.startReachability" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
3287    if (error) {
3288      completion(error, nil);
3289      return;
3290    }
3291    KBRReachability *result = retval ? [MTLJSONAdapter modelOfClass:KBRReachability.class fromJSONDictionary:retval error:&error] : nil;
3292    completion(error, result);
3293  }];
3294}
3295
3296- (void)checkReachability:(void (^)(NSError *error, KBRReachability *reachability))completion {
3297  NSDictionary *rparams = @{};
3298  [self.client sendRequestWithMethod:@"keybase.1.reachability.checkReachability" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
3299    if (error) {
3300      completion(error, nil);
3301      return;
3302    }
3303    KBRReachability *result = retval ? [MTLJSONAdapter modelOfClass:KBRReachability.class fromJSONDictionary:retval error:&error] : nil;
3304    completion(error, result);
3305  }];
3306}
3307
3308@end
3309
3310@implementation KBRRekeyRequest
3311
3312- (void)showPendingRekeyStatus:(void (^)(NSError *error))completion {
3313  NSDictionary *rparams = @{};
3314  [self.client sendRequestWithMethod:@"keybase.1.rekey.showPendingRekeyStatus" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
3315    completion(error);
3316  }];
3317}
3318
3319- (void)getPendingRekeyStatus:(void (^)(NSError *error, KBRProblemSetDevices *problemSetDevices))completion {
3320  NSDictionary *rparams = @{};
3321  [self.client sendRequestWithMethod:@"keybase.1.rekey.getPendingRekeyStatus" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
3322    if (error) {
3323      completion(error, nil);
3324      return;
3325    }
3326    KBRProblemSetDevices *result = retval ? [MTLJSONAdapter modelOfClass:KBRProblemSetDevices.class fromJSONDictionary:retval error:&error] : nil;
3327    completion(error, result);
3328  }];
3329}
3330
3331- (void)debugShowRekeyStatus:(void (^)(NSError *error))completion {
3332  NSDictionary *rparams = @{};
3333  [self.client sendRequestWithMethod:@"keybase.1.rekey.debugShowRekeyStatus" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
3334    completion(error);
3335  }];
3336}
3337
3338- (void)rekeyStatusFinish:(void (^)(NSError *error, KBROutcome outcome))completion {
3339  NSDictionary *rparams = @{};
3340  [self.client sendRequestWithMethod:@"keybase.1.rekey.rekeyStatusFinish" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
3341    completion(error, [retval integerValue]);
3342  }];
3343}
3344
3345- (void)rekeySync:(KBRRekeySyncRequestParams *)params completion:(void (^)(NSError *error))completion {
3346  NSDictionary *rparams = @{@"force": @(params.force)};
3347  [self.client sendRequestWithMethod:@"keybase.1.rekey.rekeySync" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
3348    completion(error);
3349  }];
3350}
3351
3352- (void)rekeySyncWithForce:(BOOL)force completion:(void (^)(NSError *error))completion {
3353  NSDictionary *rparams = @{@"force": @(force)};
3354  [self.client sendRequestWithMethod:@"keybase.1.rekey.rekeySync" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
3355    completion(error);
3356  }];
3357}
3358
3359- (void)getRevokeWarning:(KBRGetRevokeWarningRequestParams *)params completion:(void (^)(NSError *error, KBRRevokeWarning *revokeWarning))completion {
3360  NSDictionary *rparams = @{@"session": @(params.session), @"actingDevice": KBRValue(params.actingDevice), @"targetDevice": KBRValue(params.targetDevice)};
3361  [self.client sendRequestWithMethod:@"keybase.1.rekey.getRevokeWarning" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
3362    if (error) {
3363      completion(error, nil);
3364      return;
3365    }
3366    KBRRevokeWarning *result = retval ? [MTLJSONAdapter modelOfClass:KBRRevokeWarning.class fromJSONDictionary:retval error:&error] : nil;
3367    completion(error, result);
3368  }];
3369}
3370
3371- (void)getRevokeWarningWithSession:(NSInteger)session actingDevice:(NSString *)actingDevice targetDevice:(NSString *)targetDevice completion:(void (^)(NSError *error, KBRRevokeWarning *revokeWarning))completion {
3372  NSDictionary *rparams = @{@"session": @(session), @"actingDevice": KBRValue(actingDevice), @"targetDevice": KBRValue(targetDevice)};
3373  [self.client sendRequestWithMethod:@"keybase.1.rekey.getRevokeWarning" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
3374    if (error) {
3375      completion(error, nil);
3376      return;
3377    }
3378    KBRRevokeWarning *result = retval ? [MTLJSONAdapter modelOfClass:KBRRevokeWarning.class fromJSONDictionary:retval error:&error] : nil;
3379    completion(error, result);
3380  }];
3381}
3382
3383@end
3384
3385@implementation KBRRekeyUIRequest
3386
3387- (void)delegateRekeyUI:(void (^)(NSError *error, NSInteger n))completion {
3388  NSDictionary *rparams = @{};
3389  [self.client sendRequestWithMethod:@"keybase.1.rekeyUI.delegateRekeyUI" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
3390    completion(error, 0);
3391  }];
3392}
3393
3394- (void)refresh:(KBRRefreshRequestParams *)params completion:(void (^)(NSError *error))completion {
3395  NSDictionary *rparams = @{@"problemSetDevices": KBRValue(params.problemSetDevices)};
3396  [self.client sendRequestWithMethod:@"keybase.1.rekeyUI.refresh" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
3397    completion(error);
3398  }];
3399}
3400
3401- (void)refreshWithProblemSetDevices:(KBRProblemSetDevices *)problemSetDevices completion:(void (^)(NSError *error))completion {
3402  NSDictionary *rparams = @{@"problemSetDevices": KBRValue(problemSetDevices)};
3403  [self.client sendRequestWithMethod:@"keybase.1.rekeyUI.refresh" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
3404    completion(error);
3405  }];
3406}
3407
3408- (void)rekeySendEvent:(KBRRekeySendEventRequestParams *)params completion:(void (^)(NSError *error))completion {
3409  NSDictionary *rparams = @{@"event": KBRValue(params.event)};
3410  [self.client sendRequestWithMethod:@"keybase.1.rekeyUI.rekeySendEvent" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
3411    completion(error);
3412  }];
3413}
3414
3415- (void)rekeySendEventWithEvent:(KBRRekeyEvent *)event completion:(void (^)(NSError *error))completion {
3416  NSDictionary *rparams = @{@"event": KBRValue(event)};
3417  [self.client sendRequestWithMethod:@"keybase.1.rekeyUI.rekeySendEvent" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
3418    completion(error);
3419  }];
3420}
3421
3422@end
3423
3424@implementation KBRRevokeRequest
3425
3426- (void)revokeKey:(KBRRevokeKeyRequestParams *)params completion:(void (^)(NSError *error))completion {
3427  NSDictionary *rparams = @{@"keyID": KBRValue(params.keyID)};
3428  [self.client sendRequestWithMethod:@"keybase.1.revoke.revokeKey" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
3429    completion(error);
3430  }];
3431}
3432
3433- (void)revokeKeyWithKeyID:(NSString *)keyID completion:(void (^)(NSError *error))completion {
3434  NSDictionary *rparams = @{@"keyID": KBRValue(keyID)};
3435  [self.client sendRequestWithMethod:@"keybase.1.revoke.revokeKey" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
3436    completion(error);
3437  }];
3438}
3439
3440- (void)revokeDevice:(KBRRevokeDeviceRequestParams *)params completion:(void (^)(NSError *error))completion {
3441  NSDictionary *rparams = @{@"deviceID": KBRValue(params.deviceID), @"force": @(params.force)};
3442  [self.client sendRequestWithMethod:@"keybase.1.revoke.revokeDevice" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
3443    completion(error);
3444  }];
3445}
3446
3447- (void)revokeDeviceWithDeviceID:(NSString *)deviceID force:(BOOL)force completion:(void (^)(NSError *error))completion {
3448  NSDictionary *rparams = @{@"deviceID": KBRValue(deviceID), @"force": @(force)};
3449  [self.client sendRequestWithMethod:@"keybase.1.revoke.revokeDevice" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
3450    completion(error);
3451  }];
3452}
3453
3454- (void)revokeSigs:(KBRRevokeSigsRequestParams *)params completion:(void (^)(NSError *error))completion {
3455  NSDictionary *rparams = @{@"sigIDQueries": KBRValue(params.sigIDQueries)};
3456  [self.client sendRequestWithMethod:@"keybase.1.revoke.revokeSigs" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
3457    completion(error);
3458  }];
3459}
3460
3461- (void)revokeSigsWithSigIDQueries:(NSArray *)sigIDQueries completion:(void (^)(NSError *error))completion {
3462  NSDictionary *rparams = @{@"sigIDQueries": KBRValue(sigIDQueries)};
3463  [self.client sendRequestWithMethod:@"keybase.1.revoke.revokeSigs" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
3464    completion(error);
3465  }];
3466}
3467
3468@end
3469
3470@implementation KBRSaltpackRequest
3471
3472- (void)saltpackEncrypt:(KBRSaltpackEncryptRequestParams *)params completion:(void (^)(NSError *error))completion {
3473  NSDictionary *rparams = @{@"source": KBRValue(params.source), @"sink": KBRValue(params.sink), @"opts": KBRValue(params.opts)};
3474  [self.client sendRequestWithMethod:@"keybase.1.saltpack.saltpackEncrypt" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
3475    completion(error);
3476  }];
3477}
3478
3479- (void)saltpackEncryptWithSource:(KBRStream *)source sink:(KBRStream *)sink opts:(KBRSaltpackEncryptOptions *)opts completion:(void (^)(NSError *error))completion {
3480  NSDictionary *rparams = @{@"source": KBRValue(source), @"sink": KBRValue(sink), @"opts": KBRValue(opts)};
3481  [self.client sendRequestWithMethod:@"keybase.1.saltpack.saltpackEncrypt" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
3482    completion(error);
3483  }];
3484}
3485
3486- (void)saltpackDecrypt:(KBRSaltpackDecryptRequestParams *)params completion:(void (^)(NSError *error, KBRSaltpackEncryptedMessageInfo *saltpackEncryptedMessageInfo))completion {
3487  NSDictionary *rparams = @{@"source": KBRValue(params.source), @"sink": KBRValue(params.sink), @"opts": KBRValue(params.opts)};
3488  [self.client sendRequestWithMethod:@"keybase.1.saltpack.saltpackDecrypt" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
3489    if (error) {
3490      completion(error, nil);
3491      return;
3492    }
3493    KBRSaltpackEncryptedMessageInfo *result = retval ? [MTLJSONAdapter modelOfClass:KBRSaltpackEncryptedMessageInfo.class fromJSONDictionary:retval error:&error] : nil;
3494    completion(error, result);
3495  }];
3496}
3497
3498- (void)saltpackDecryptWithSource:(KBRStream *)source sink:(KBRStream *)sink opts:(KBRSaltpackDecryptOptions *)opts completion:(void (^)(NSError *error, KBRSaltpackEncryptedMessageInfo *saltpackEncryptedMessageInfo))completion {
3499  NSDictionary *rparams = @{@"source": KBRValue(source), @"sink": KBRValue(sink), @"opts": KBRValue(opts)};
3500  [self.client sendRequestWithMethod:@"keybase.1.saltpack.saltpackDecrypt" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
3501    if (error) {
3502      completion(error, nil);
3503      return;
3504    }
3505    KBRSaltpackEncryptedMessageInfo *result = retval ? [MTLJSONAdapter modelOfClass:KBRSaltpackEncryptedMessageInfo.class fromJSONDictionary:retval error:&error] : nil;
3506    completion(error, result);
3507  }];
3508}
3509
3510- (void)saltpackSign:(KBRSaltpackSignRequestParams *)params completion:(void (^)(NSError *error))completion {
3511  NSDictionary *rparams = @{@"source": KBRValue(params.source), @"sink": KBRValue(params.sink), @"opts": KBRValue(params.opts)};
3512  [self.client sendRequestWithMethod:@"keybase.1.saltpack.saltpackSign" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
3513    completion(error);
3514  }];
3515}
3516
3517- (void)saltpackSignWithSource:(KBRStream *)source sink:(KBRStream *)sink opts:(KBRSaltpackSignOptions *)opts completion:(void (^)(NSError *error))completion {
3518  NSDictionary *rparams = @{@"source": KBRValue(source), @"sink": KBRValue(sink), @"opts": KBRValue(opts)};
3519  [self.client sendRequestWithMethod:@"keybase.1.saltpack.saltpackSign" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
3520    completion(error);
3521  }];
3522}
3523
3524- (void)saltpackVerify:(KBRSaltpackVerifyRequestParams *)params completion:(void (^)(NSError *error))completion {
3525  NSDictionary *rparams = @{@"source": KBRValue(params.source), @"sink": KBRValue(params.sink), @"opts": KBRValue(params.opts)};
3526  [self.client sendRequestWithMethod:@"keybase.1.saltpack.saltpackVerify" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
3527    completion(error);
3528  }];
3529}
3530
3531- (void)saltpackVerifyWithSource:(KBRStream *)source sink:(KBRStream *)sink opts:(KBRSaltpackVerifyOptions *)opts completion:(void (^)(NSError *error))completion {
3532  NSDictionary *rparams = @{@"source": KBRValue(source), @"sink": KBRValue(sink), @"opts": KBRValue(opts)};
3533  [self.client sendRequestWithMethod:@"keybase.1.saltpack.saltpackVerify" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
3534    completion(error);
3535  }];
3536}
3537
3538@end
3539
3540@implementation KBRScanProofsRequest
3541
3542- (void)scanProofs:(KBRScanProofsRequestParams *)params completion:(void (^)(NSError *error))completion {
3543  NSDictionary *rparams = @{@"infile": KBRValue(params.infile), @"indices": KBRValue(params.indices), @"sigid": KBRValue(params.sigid), @"ratelimit": @(params.ratelimit), @"cachefile": KBRValue(params.cachefile), @"ignorefile": KBRValue(params.ignorefile)};
3544  [self.client sendRequestWithMethod:@"keybase.1.ScanProofs.scanProofs" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
3545    completion(error);
3546  }];
3547}
3548
3549- (void)scanProofsWithInfile:(NSString *)infile indices:(NSString *)indices sigid:(NSString *)sigid ratelimit:(NSInteger)ratelimit cachefile:(NSString *)cachefile ignorefile:(NSString *)ignorefile completion:(void (^)(NSError *error))completion {
3550  NSDictionary *rparams = @{@"infile": KBRValue(infile), @"indices": KBRValue(indices), @"sigid": KBRValue(sigid), @"ratelimit": @(ratelimit), @"cachefile": KBRValue(cachefile), @"ignorefile": KBRValue(ignorefile)};
3551  [self.client sendRequestWithMethod:@"keybase.1.ScanProofs.scanProofs" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
3552    completion(error);
3553  }];
3554}
3555
3556@end
3557
3558@implementation KBRSecretUiRequest
3559
3560- (void)getPassphrase:(KBRGetPassphraseRequestParams *)params completion:(void (^)(NSError *error, KBRGetPassphraseRes *getPassphraseRes))completion {
3561  NSDictionary *rparams = @{@"pinentry": KBRValue(params.pinentry), @"terminal": KBRValue(params.terminal)};
3562  [self.client sendRequestWithMethod:@"keybase.1.secretUi.getPassphrase" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
3563    if (error) {
3564      completion(error, nil);
3565      return;
3566    }
3567    KBRGetPassphraseRes *result = retval ? [MTLJSONAdapter modelOfClass:KBRGetPassphraseRes.class fromJSONDictionary:retval error:&error] : nil;
3568    completion(error, result);
3569  }];
3570}
3571
3572- (void)getPassphraseWithPinentry:(KBRGUIEntryArg *)pinentry terminal:(KBRSecretEntryArg *)terminal completion:(void (^)(NSError *error, KBRGetPassphraseRes *getPassphraseRes))completion {
3573  NSDictionary *rparams = @{@"pinentry": KBRValue(pinentry), @"terminal": KBRValue(terminal)};
3574  [self.client sendRequestWithMethod:@"keybase.1.secretUi.getPassphrase" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
3575    if (error) {
3576      completion(error, nil);
3577      return;
3578    }
3579    KBRGetPassphraseRes *result = retval ? [MTLJSONAdapter modelOfClass:KBRGetPassphraseRes.class fromJSONDictionary:retval error:&error] : nil;
3580    completion(error, result);
3581  }];
3582}
3583
3584@end
3585
3586@implementation KBRSecretKeysRequest
3587
3588- (void)getSecretKeys:(void (^)(NSError *error, KBRSecretKeys *secretKeys))completion {
3589  NSDictionary *rparams = @{};
3590  [self.client sendRequestWithMethod:@"keybase.1.SecretKeys.getSecretKeys" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
3591    if (error) {
3592      completion(error, nil);
3593      return;
3594    }
3595    KBRSecretKeys *result = retval ? [MTLJSONAdapter modelOfClass:KBRSecretKeys.class fromJSONDictionary:retval error:&error] : nil;
3596    completion(error, result);
3597  }];
3598}
3599
3600@end
3601
3602@implementation KBRSessionRequest
3603
3604- (void)currentSession:(void (^)(NSError *error, KBRSession *session))completion {
3605  NSDictionary *rparams = @{};
3606  [self.client sendRequestWithMethod:@"keybase.1.session.currentSession" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
3607    if (error) {
3608      completion(error, nil);
3609      return;
3610    }
3611    KBRSession *result = retval ? [MTLJSONAdapter modelOfClass:KBRSession.class fromJSONDictionary:retval error:&error] : nil;
3612    completion(error, result);
3613  }];
3614}
3615
3616- (void)sessionPing:(void (^)(NSError *error))completion {
3617  NSDictionary *rparams = @{};
3618  [self.client sendRequestWithMethod:@"keybase.1.session.sessionPing" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
3619    completion(error);
3620  }];
3621}
3622
3623@end
3624
3625@implementation KBRSignupRequest
3626
3627- (void)checkUsernameAvailable:(KBRCheckUsernameAvailableRequestParams *)params completion:(void (^)(NSError *error))completion {
3628  NSDictionary *rparams = @{@"username": KBRValue(params.username)};
3629  [self.client sendRequestWithMethod:@"keybase.1.signup.checkUsernameAvailable" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
3630    completion(error);
3631  }];
3632}
3633
3634- (void)checkUsernameAvailableWithUsername:(NSString *)username completion:(void (^)(NSError *error))completion {
3635  NSDictionary *rparams = @{@"username": KBRValue(username)};
3636  [self.client sendRequestWithMethod:@"keybase.1.signup.checkUsernameAvailable" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
3637    completion(error);
3638  }];
3639}
3640
3641- (void)signup:(KBRSignupRequestParams *)params completion:(void (^)(NSError *error, KBRSignupRes *signupRes))completion {
3642  NSDictionary *rparams = @{@"email": KBRValue(params.email), @"inviteCode": KBRValue(params.inviteCode), @"passphrase": KBRValue(params.passphrase), @"username": KBRValue(params.username), @"deviceName": KBRValue(params.deviceName), @"deviceType": @(params.deviceType), @"storeSecret": @(params.storeSecret), @"skipMail": @(params.skipMail), @"genPGPBatch": @(params.genPGPBatch)};
3643  [self.client sendRequestWithMethod:@"keybase.1.signup.signup" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
3644    if (error) {
3645      completion(error, nil);
3646      return;
3647    }
3648    KBRSignupRes *result = retval ? [MTLJSONAdapter modelOfClass:KBRSignupRes.class fromJSONDictionary:retval error:&error] : nil;
3649    completion(error, result);
3650  }];
3651}
3652
3653- (void)signupWithEmail:(NSString *)email inviteCode:(NSString *)inviteCode passphrase:(NSString *)passphrase username:(NSString *)username deviceName:(NSString *)deviceName deviceType:(KBRDeviceType)deviceType storeSecret:(BOOL)storeSecret skipMail:(BOOL)skipMail genPGPBatch:(BOOL)genPGPBatch completion:(void (^)(NSError *error, KBRSignupRes *signupRes))completion {
3654  NSDictionary *rparams = @{@"email": KBRValue(email), @"inviteCode": KBRValue(inviteCode), @"passphrase": KBRValue(passphrase), @"username": KBRValue(username), @"deviceName": KBRValue(deviceName), @"deviceType": @(deviceType), @"storeSecret": @(storeSecret), @"skipMail": @(skipMail), @"genPGPBatch": @(genPGPBatch)};
3655  [self.client sendRequestWithMethod:@"keybase.1.signup.signup" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
3656    if (error) {
3657      completion(error, nil);
3658      return;
3659    }
3660    KBRSignupRes *result = retval ? [MTLJSONAdapter modelOfClass:KBRSignupRes.class fromJSONDictionary:retval error:&error] : nil;
3661    completion(error, result);
3662  }];
3663}
3664
3665- (void)inviteRequest:(KBRInviteRequestRequestParams *)params completion:(void (^)(NSError *error))completion {
3666  NSDictionary *rparams = @{@"email": KBRValue(params.email), @"fullname": KBRValue(params.fullname), @"notes": KBRValue(params.notes)};
3667  [self.client sendRequestWithMethod:@"keybase.1.signup.inviteRequest" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
3668    completion(error);
3669  }];
3670}
3671
3672- (void)inviteRequestWithEmail:(NSString *)email fullname:(NSString *)fullname notes:(NSString *)notes completion:(void (^)(NSError *error))completion {
3673  NSDictionary *rparams = @{@"email": KBRValue(email), @"fullname": KBRValue(fullname), @"notes": KBRValue(notes)};
3674  [self.client sendRequestWithMethod:@"keybase.1.signup.inviteRequest" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
3675    completion(error);
3676  }];
3677}
3678
3679- (void)checkInvitationCode:(KBRCheckInvitationCodeRequestParams *)params completion:(void (^)(NSError *error))completion {
3680  NSDictionary *rparams = @{@"invitationCode": KBRValue(params.invitationCode)};
3681  [self.client sendRequestWithMethod:@"keybase.1.signup.checkInvitationCode" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
3682    completion(error);
3683  }];
3684}
3685
3686- (void)checkInvitationCodeWithInvitationCode:(NSString *)invitationCode completion:(void (^)(NSError *error))completion {
3687  NSDictionary *rparams = @{@"invitationCode": KBRValue(invitationCode)};
3688  [self.client sendRequestWithMethod:@"keybase.1.signup.checkInvitationCode" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
3689    completion(error);
3690  }];
3691}
3692
3693@end
3694
3695@implementation KBRSigsRequest
3696
3697- (void)sigList:(KBRSigListRequestParams *)params completion:(void (^)(NSError *error, NSArray *items))completion {
3698  NSDictionary *rparams = @{@"arg": KBRValue(params.arg)};
3699  [self.client sendRequestWithMethod:@"keybase.1.sigs.sigList" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
3700    if (error) {
3701      completion(error, nil);
3702      return;
3703    }
3704    NSArray *results = retval ? [MTLJSONAdapter modelsOfClass:KBRSig.class fromJSONArray:retval error:&error] : nil;
3705    completion(error, results);
3706  }];
3707}
3708
3709- (void)sigListWithArg:(KBRSigListArgs *)arg completion:(void (^)(NSError *error, NSArray *items))completion {
3710  NSDictionary *rparams = @{@"arg": KBRValue(arg)};
3711  [self.client sendRequestWithMethod:@"keybase.1.sigs.sigList" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
3712    if (error) {
3713      completion(error, nil);
3714      return;
3715    }
3716    NSArray *results = retval ? [MTLJSONAdapter modelsOfClass:KBRSig.class fromJSONArray:retval error:&error] : nil;
3717    completion(error, results);
3718  }];
3719}
3720
3721- (void)sigListJSON:(KBRSigListJSONRequestParams *)params completion:(void (^)(NSError *error, NSString *str))completion {
3722  NSDictionary *rparams = @{@"arg": KBRValue(params.arg)};
3723  [self.client sendRequestWithMethod:@"keybase.1.sigs.sigListJSON" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
3724    if (error) {
3725      completion(error, nil);
3726      return;
3727    }
3728    NSString *result = retval ? [MTLJSONAdapter modelOfClass:NSString.class fromJSONDictionary:retval error:&error] : nil;
3729    completion(error, result);
3730  }];
3731}
3732
3733- (void)sigListJSONWithArg:(KBRSigListArgs *)arg completion:(void (^)(NSError *error, NSString *str))completion {
3734  NSDictionary *rparams = @{@"arg": KBRValue(arg)};
3735  [self.client sendRequestWithMethod:@"keybase.1.sigs.sigListJSON" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
3736    if (error) {
3737      completion(error, nil);
3738      return;
3739    }
3740    NSString *result = retval ? [MTLJSONAdapter modelOfClass:NSString.class fromJSONDictionary:retval error:&error] : nil;
3741    completion(error, result);
3742  }];
3743}
3744
3745@end
3746
3747@implementation KBRStreamUiRequest
3748
3749- (void)close:(KBRCloseRequestParams *)params completion:(void (^)(NSError *error))completion {
3750  NSDictionary *rparams = @{@"s": KBRValue(params.s)};
3751  [self.client sendRequestWithMethod:@"keybase.1.streamUi.close" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
3752    completion(error);
3753  }];
3754}
3755
3756- (void)closeWithS:(KBRStream *)s completion:(void (^)(NSError *error))completion {
3757  NSDictionary *rparams = @{@"s": KBRValue(s)};
3758  [self.client sendRequestWithMethod:@"keybase.1.streamUi.close" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
3759    completion(error);
3760  }];
3761}
3762
3763- (void)read:(KBRReadRequestParams *)params completion:(void (^)(NSError *error, NSData *bytes))completion {
3764  NSDictionary *rparams = @{@"s": KBRValue(params.s), @"sz": @(params.sz)};
3765  [self.client sendRequestWithMethod:@"keybase.1.streamUi.read" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
3766    if (error) {
3767      completion(error, nil);
3768      return;
3769    }
3770    NSData *result = retval ? [MTLJSONAdapter modelOfClass:NSData.class fromJSONDictionary:retval error:&error] : nil;
3771    completion(error, result);
3772  }];
3773}
3774
3775- (void)readWithS:(KBRStream *)s sz:(NSInteger)sz completion:(void (^)(NSError *error, NSData *bytes))completion {
3776  NSDictionary *rparams = @{@"s": KBRValue(s), @"sz": @(sz)};
3777  [self.client sendRequestWithMethod:@"keybase.1.streamUi.read" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
3778    if (error) {
3779      completion(error, nil);
3780      return;
3781    }
3782    NSData *result = retval ? [MTLJSONAdapter modelOfClass:NSData.class fromJSONDictionary:retval error:&error] : nil;
3783    completion(error, result);
3784  }];
3785}
3786
3787- (void)reset:(KBRResetRequestParams *)params completion:(void (^)(NSError *error))completion {
3788  NSDictionary *rparams = @{@"s": KBRValue(params.s)};
3789  [self.client sendRequestWithMethod:@"keybase.1.streamUi.reset" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
3790    completion(error);
3791  }];
3792}
3793
3794- (void)resetWithS:(KBRStream *)s completion:(void (^)(NSError *error))completion {
3795  NSDictionary *rparams = @{@"s": KBRValue(s)};
3796  [self.client sendRequestWithMethod:@"keybase.1.streamUi.reset" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
3797    completion(error);
3798  }];
3799}
3800
3801- (void)write:(KBRWriteRequestParams *)params completion:(void (^)(NSError *error, NSInteger n))completion {
3802  NSDictionary *rparams = @{@"s": KBRValue(params.s), @"buf": KBRValue(params.buf)};
3803  [self.client sendRequestWithMethod:@"keybase.1.streamUi.write" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
3804    completion(error, 0);
3805  }];
3806}
3807
3808- (void)writeWithS:(KBRStream *)s buf:(NSData *)buf completion:(void (^)(NSError *error, NSInteger n))completion {
3809  NSDictionary *rparams = @{@"s": KBRValue(s), @"buf": KBRValue(buf)};
3810  [self.client sendRequestWithMethod:@"keybase.1.streamUi.write" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
3811    completion(error, 0);
3812  }];
3813}
3814
3815@end
3816
3817@implementation KBRTestRequest
3818
3819- (void)test:(KBRTestRequestParams *)params completion:(void (^)(NSError *error, KBRTest *test))completion {
3820  NSDictionary *rparams = @{@"name": KBRValue(params.name)};
3821  [self.client sendRequestWithMethod:@"keybase.1.test.test" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
3822    if (error) {
3823      completion(error, nil);
3824      return;
3825    }
3826    KBRTest *result = retval ? [MTLJSONAdapter modelOfClass:KBRTest.class fromJSONDictionary:retval error:&error] : nil;
3827    completion(error, result);
3828  }];
3829}
3830
3831- (void)testWithName:(NSString *)name completion:(void (^)(NSError *error, KBRTest *test))completion {
3832  NSDictionary *rparams = @{@"name": KBRValue(name)};
3833  [self.client sendRequestWithMethod:@"keybase.1.test.test" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
3834    if (error) {
3835      completion(error, nil);
3836      return;
3837    }
3838    KBRTest *result = retval ? [MTLJSONAdapter modelOfClass:KBRTest.class fromJSONDictionary:retval error:&error] : nil;
3839    completion(error, result);
3840  }];
3841}
3842
3843- (void)testCallback:(KBRTestCallbackRequestParams *)params completion:(void (^)(NSError *error, NSString *str))completion {
3844  NSDictionary *rparams = @{@"name": KBRValue(params.name)};
3845  [self.client sendRequestWithMethod:@"keybase.1.test.testCallback" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
3846    if (error) {
3847      completion(error, nil);
3848      return;
3849    }
3850    NSString *result = retval ? [MTLJSONAdapter modelOfClass:NSString.class fromJSONDictionary:retval error:&error] : nil;
3851    completion(error, result);
3852  }];
3853}
3854
3855- (void)testCallbackWithName:(NSString *)name completion:(void (^)(NSError *error, NSString *str))completion {
3856  NSDictionary *rparams = @{@"name": KBRValue(name)};
3857  [self.client sendRequestWithMethod:@"keybase.1.test.testCallback" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
3858    if (error) {
3859      completion(error, nil);
3860      return;
3861    }
3862    NSString *result = retval ? [MTLJSONAdapter modelOfClass:NSString.class fromJSONDictionary:retval error:&error] : nil;
3863    completion(error, result);
3864  }];
3865}
3866
3867- (void)panic:(KBRPanicRequestParams *)params completion:(void (^)(NSError *error))completion {
3868  NSDictionary *rparams = @{@"message": KBRValue(params.message)};
3869  [self.client sendRequestWithMethod:@"keybase.1.test.panic" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
3870    completion(error);
3871  }];
3872}
3873
3874- (void)panicWithMessage:(NSString *)message completion:(void (^)(NSError *error))completion {
3875  NSDictionary *rparams = @{@"message": KBRValue(message)};
3876  [self.client sendRequestWithMethod:@"keybase.1.test.panic" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
3877    completion(error);
3878  }];
3879}
3880
3881@end
3882
3883@implementation KBRTlfRequest
3884
3885- (void)cryptKeys:(KBRCryptKeysRequestParams *)params completion:(void (^)(NSError *error, KBRGetTLFCryptKeysRes *getTLFCryptKeysRes))completion {
3886  NSDictionary *rparams = @{@"query": KBRValue(params.query)};
3887  [self.client sendRequestWithMethod:@"keybase.1.tlf.CryptKeys" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
3888    if (error) {
3889      completion(error, nil);
3890      return;
3891    }
3892    KBRGetTLFCryptKeysRes *result = retval ? [MTLJSONAdapter modelOfClass:KBRGetTLFCryptKeysRes.class fromJSONDictionary:retval error:&error] : nil;
3893    completion(error, result);
3894  }];
3895}
3896
3897- (void)cryptKeysWithQuery:(KBRTLFQuery *)query completion:(void (^)(NSError *error, KBRGetTLFCryptKeysRes *getTLFCryptKeysRes))completion {
3898  NSDictionary *rparams = @{@"query": KBRValue(query)};
3899  [self.client sendRequestWithMethod:@"keybase.1.tlf.CryptKeys" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
3900    if (error) {
3901      completion(error, nil);
3902      return;
3903    }
3904    KBRGetTLFCryptKeysRes *result = retval ? [MTLJSONAdapter modelOfClass:KBRGetTLFCryptKeysRes.class fromJSONDictionary:retval error:&error] : nil;
3905    completion(error, result);
3906  }];
3907}
3908
3909- (void)publicCanonicalTLFNameAndID:(KBRPublicCanonicalTLFNameAndIDRequestParams *)params completion:(void (^)(NSError *error, KBRCanonicalTLFNameAndIDWithBreaks *canonicalTLFNameAndIDWithBreaks))completion {
3910  NSDictionary *rparams = @{@"query": KBRValue(params.query)};
3911  [self.client sendRequestWithMethod:@"keybase.1.tlf.publicCanonicalTLFNameAndID" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
3912    if (error) {
3913      completion(error, nil);
3914      return;
3915    }
3916    KBRCanonicalTLFNameAndIDWithBreaks *result = retval ? [MTLJSONAdapter modelOfClass:KBRCanonicalTLFNameAndIDWithBreaks.class fromJSONDictionary:retval error:&error] : nil;
3917    completion(error, result);
3918  }];
3919}
3920
3921- (void)publicCanonicalTLFNameAndIDWithQuery:(KBRTLFQuery *)query completion:(void (^)(NSError *error, KBRCanonicalTLFNameAndIDWithBreaks *canonicalTLFNameAndIDWithBreaks))completion {
3922  NSDictionary *rparams = @{@"query": KBRValue(query)};
3923  [self.client sendRequestWithMethod:@"keybase.1.tlf.publicCanonicalTLFNameAndID" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
3924    if (error) {
3925      completion(error, nil);
3926      return;
3927    }
3928    KBRCanonicalTLFNameAndIDWithBreaks *result = retval ? [MTLJSONAdapter modelOfClass:KBRCanonicalTLFNameAndIDWithBreaks.class fromJSONDictionary:retval error:&error] : nil;
3929    completion(error, result);
3930  }];
3931}
3932
3933- (void)completeAndCanonicalizePrivateTlfName:(KBRCompleteAndCanonicalizePrivateTlfNameRequestParams *)params completion:(void (^)(NSError *error, KBRCanonicalTLFNameAndIDWithBreaks *canonicalTLFNameAndIDWithBreaks))completion {
3934  NSDictionary *rparams = @{@"query": KBRValue(params.query)};
3935  [self.client sendRequestWithMethod:@"keybase.1.tlf.completeAndCanonicalizePrivateTlfName" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
3936    if (error) {
3937      completion(error, nil);
3938      return;
3939    }
3940    KBRCanonicalTLFNameAndIDWithBreaks *result = retval ? [MTLJSONAdapter modelOfClass:KBRCanonicalTLFNameAndIDWithBreaks.class fromJSONDictionary:retval error:&error] : nil;
3941    completion(error, result);
3942  }];
3943}
3944
3945- (void)completeAndCanonicalizePrivateTlfNameWithQuery:(KBRTLFQuery *)query completion:(void (^)(NSError *error, KBRCanonicalTLFNameAndIDWithBreaks *canonicalTLFNameAndIDWithBreaks))completion {
3946  NSDictionary *rparams = @{@"query": KBRValue(query)};
3947  [self.client sendRequestWithMethod:@"keybase.1.tlf.completeAndCanonicalizePrivateTlfName" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
3948    if (error) {
3949      completion(error, nil);
3950      return;
3951    }
3952    KBRCanonicalTLFNameAndIDWithBreaks *result = retval ? [MTLJSONAdapter modelOfClass:KBRCanonicalTLFNameAndIDWithBreaks.class fromJSONDictionary:retval error:&error] : nil;
3953    completion(error, result);
3954  }];
3955}
3956
3957@end
3958
3959@implementation KBRTlfKeysRequest
3960
3961- (void)getTLFCryptKeys:(KBRGetTLFCryptKeysRequestParams *)params completion:(void (^)(NSError *error, KBRGetTLFCryptKeysRes *getTLFCryptKeysRes))completion {
3962  NSDictionary *rparams = @{@"query": KBRValue(params.query)};
3963  [self.client sendRequestWithMethod:@"keybase.1.tlfKeys.getTLFCryptKeys" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
3964    if (error) {
3965      completion(error, nil);
3966      return;
3967    }
3968    KBRGetTLFCryptKeysRes *result = retval ? [MTLJSONAdapter modelOfClass:KBRGetTLFCryptKeysRes.class fromJSONDictionary:retval error:&error] : nil;
3969    completion(error, result);
3970  }];
3971}
3972
3973- (void)getTLFCryptKeysWithQuery:(KBRTLFQuery *)query completion:(void (^)(NSError *error, KBRGetTLFCryptKeysRes *getTLFCryptKeysRes))completion {
3974  NSDictionary *rparams = @{@"query": KBRValue(query)};
3975  [self.client sendRequestWithMethod:@"keybase.1.tlfKeys.getTLFCryptKeys" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
3976    if (error) {
3977      completion(error, nil);
3978      return;
3979    }
3980    KBRGetTLFCryptKeysRes *result = retval ? [MTLJSONAdapter modelOfClass:KBRGetTLFCryptKeysRes.class fromJSONDictionary:retval error:&error] : nil;
3981    completion(error, result);
3982  }];
3983}
3984
3985- (void)getPublicCanonicalTLFNameAndID:(KBRGetPublicCanonicalTLFNameAndIDRequestParams *)params completion:(void (^)(NSError *error, KBRCanonicalTLFNameAndIDWithBreaks *canonicalTLFNameAndIDWithBreaks))completion {
3986  NSDictionary *rparams = @{@"query": KBRValue(params.query)};
3987  [self.client sendRequestWithMethod:@"keybase.1.tlfKeys.getPublicCanonicalTLFNameAndID" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
3988    if (error) {
3989      completion(error, nil);
3990      return;
3991    }
3992    KBRCanonicalTLFNameAndIDWithBreaks *result = retval ? [MTLJSONAdapter modelOfClass:KBRCanonicalTLFNameAndIDWithBreaks.class fromJSONDictionary:retval error:&error] : nil;
3993    completion(error, result);
3994  }];
3995}
3996
3997- (void)getPublicCanonicalTLFNameAndIDWithQuery:(KBRTLFQuery *)query completion:(void (^)(NSError *error, KBRCanonicalTLFNameAndIDWithBreaks *canonicalTLFNameAndIDWithBreaks))completion {
3998  NSDictionary *rparams = @{@"query": KBRValue(query)};
3999  [self.client sendRequestWithMethod:@"keybase.1.tlfKeys.getPublicCanonicalTLFNameAndID" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
4000    if (error) {
4001      completion(error, nil);
4002      return;
4003    }
4004    KBRCanonicalTLFNameAndIDWithBreaks *result = retval ? [MTLJSONAdapter modelOfClass:KBRCanonicalTLFNameAndIDWithBreaks.class fromJSONDictionary:retval error:&error] : nil;
4005    completion(error, result);
4006  }];
4007}
4008
4009@end
4010
4011@implementation KBRTrackRequest
4012
4013- (void)track:(KBRTrackRequestParams *)params completion:(void (^)(NSError *error))completion {
4014  NSDictionary *rparams = @{@"userAssertion": KBRValue(params.userAssertion), @"options": KBRValue(params.options), @"forceRemoteCheck": @(params.forceRemoteCheck)};
4015  [self.client sendRequestWithMethod:@"keybase.1.track.track" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
4016    completion(error);
4017  }];
4018}
4019
4020- (void)trackWithUserAssertion:(NSString *)userAssertion options:(KBRTrackOptions *)options forceRemoteCheck:(BOOL)forceRemoteCheck completion:(void (^)(NSError *error))completion {
4021  NSDictionary *rparams = @{@"userAssertion": KBRValue(userAssertion), @"options": KBRValue(options), @"forceRemoteCheck": @(forceRemoteCheck)};
4022  [self.client sendRequestWithMethod:@"keybase.1.track.track" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
4023    completion(error);
4024  }];
4025}
4026
4027- (void)trackWithToken:(KBRTrackWithTokenRequestParams *)params completion:(void (^)(NSError *error))completion {
4028  NSDictionary *rparams = @{@"trackToken": KBRValue(params.trackToken), @"options": KBRValue(params.options)};
4029  [self.client sendRequestWithMethod:@"keybase.1.track.trackWithToken" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
4030    completion(error);
4031  }];
4032}
4033
4034- (void)trackWithTokenWithTrackToken:(NSString *)trackToken options:(KBRTrackOptions *)options completion:(void (^)(NSError *error))completion {
4035  NSDictionary *rparams = @{@"trackToken": KBRValue(trackToken), @"options": KBRValue(options)};
4036  [self.client sendRequestWithMethod:@"keybase.1.track.trackWithToken" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
4037    completion(error);
4038  }];
4039}
4040
4041- (void)dismissWithToken:(KBRDismissWithTokenRequestParams *)params completion:(void (^)(NSError *error))completion {
4042  NSDictionary *rparams = @{@"trackToken": KBRValue(params.trackToken)};
4043  [self.client sendRequestWithMethod:@"keybase.1.track.dismissWithToken" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
4044    completion(error);
4045  }];
4046}
4047
4048- (void)dismissWithTokenWithTrackToken:(NSString *)trackToken completion:(void (^)(NSError *error))completion {
4049  NSDictionary *rparams = @{@"trackToken": KBRValue(trackToken)};
4050  [self.client sendRequestWithMethod:@"keybase.1.track.dismissWithToken" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
4051    completion(error);
4052  }];
4053}
4054
4055- (void)untrack:(KBRUntrackRequestParams *)params completion:(void (^)(NSError *error))completion {
4056  NSDictionary *rparams = @{@"username": KBRValue(params.username)};
4057  [self.client sendRequestWithMethod:@"keybase.1.track.untrack" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
4058    completion(error);
4059  }];
4060}
4061
4062- (void)untrackWithUsername:(NSString *)username completion:(void (^)(NSError *error))completion {
4063  NSDictionary *rparams = @{@"username": KBRValue(username)};
4064  [self.client sendRequestWithMethod:@"keybase.1.track.untrack" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
4065    completion(error);
4066  }];
4067}
4068
4069- (void)checkTracking:(void (^)(NSError *error))completion {
4070  NSDictionary *rparams = @{};
4071  [self.client sendRequestWithMethod:@"keybase.1.track.checkTracking" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
4072    completion(error);
4073  }];
4074}
4075
4076- (void)fakeTrackingChanged:(KBRFakeTrackingChangedRequestParams *)params completion:(void (^)(NSError *error))completion {
4077  NSDictionary *rparams = @{@"username": KBRValue(params.username)};
4078  [self.client sendRequestWithMethod:@"keybase.1.track.fakeTrackingChanged" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
4079    completion(error);
4080  }];
4081}
4082
4083- (void)fakeTrackingChangedWithUsername:(NSString *)username completion:(void (^)(NSError *error))completion {
4084  NSDictionary *rparams = @{@"username": KBRValue(username)};
4085  [self.client sendRequestWithMethod:@"keybase.1.track.fakeTrackingChanged" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
4086    completion(error);
4087  }];
4088}
4089
4090@end
4091
4092@implementation KBRUiRequest
4093
4094- (void)promptYesNo:(KBRPromptYesNoRequestParams *)params completion:(void (^)(NSError *error, BOOL b))completion {
4095  NSDictionary *rparams = @{@"text": KBRValue(params.text), @"promptDefault": @(params.promptDefault)};
4096  [self.client sendRequestWithMethod:@"keybase.1.ui.promptYesNo" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
4097    completion(error, 0);
4098  }];
4099}
4100
4101- (void)promptYesNoWithText:(KBRText *)text promptDefault:(KBRPromptDefault)promptDefault completion:(void (^)(NSError *error, BOOL b))completion {
4102  NSDictionary *rparams = @{@"text": KBRValue(text), @"promptDefault": @(promptDefault)};
4103  [self.client sendRequestWithMethod:@"keybase.1.ui.promptYesNo" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
4104    completion(error, 0);
4105  }];
4106}
4107
4108@end
4109
4110@implementation KBRUserRequest
4111
4112- (void)listTrackers:(KBRListTrackersRequestParams *)params completion:(void (^)(NSError *error, NSArray *items))completion {
4113  NSDictionary *rparams = @{@"uid": KBRValue(params.uid)};
4114  [self.client sendRequestWithMethod:@"keybase.1.user.listTrackers" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
4115    if (error) {
4116      completion(error, nil);
4117      return;
4118    }
4119    NSArray *results = retval ? [MTLJSONAdapter modelsOfClass:KBRTracker.class fromJSONArray:retval error:&error] : nil;
4120    completion(error, results);
4121  }];
4122}
4123
4124- (void)listTrackersWithUid:(NSString *)uid completion:(void (^)(NSError *error, NSArray *items))completion {
4125  NSDictionary *rparams = @{@"uid": KBRValue(uid)};
4126  [self.client sendRequestWithMethod:@"keybase.1.user.listTrackers" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
4127    if (error) {
4128      completion(error, nil);
4129      return;
4130    }
4131    NSArray *results = retval ? [MTLJSONAdapter modelsOfClass:KBRTracker.class fromJSONArray:retval error:&error] : nil;
4132    completion(error, results);
4133  }];
4134}
4135
4136- (void)listTrackersByName:(KBRListTrackersByNameRequestParams *)params completion:(void (^)(NSError *error, NSArray *items))completion {
4137  NSDictionary *rparams = @{@"username": KBRValue(params.username)};
4138  [self.client sendRequestWithMethod:@"keybase.1.user.listTrackersByName" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
4139    if (error) {
4140      completion(error, nil);
4141      return;
4142    }
4143    NSArray *results = retval ? [MTLJSONAdapter modelsOfClass:KBRTracker.class fromJSONArray:retval error:&error] : nil;
4144    completion(error, results);
4145  }];
4146}
4147
4148- (void)listTrackersByNameWithUsername:(NSString *)username completion:(void (^)(NSError *error, NSArray *items))completion {
4149  NSDictionary *rparams = @{@"username": KBRValue(username)};
4150  [self.client sendRequestWithMethod:@"keybase.1.user.listTrackersByName" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
4151    if (error) {
4152      completion(error, nil);
4153      return;
4154    }
4155    NSArray *results = retval ? [MTLJSONAdapter modelsOfClass:KBRTracker.class fromJSONArray:retval error:&error] : nil;
4156    completion(error, results);
4157  }];
4158}
4159
4160- (void)listTrackersSelf:(void (^)(NSError *error, NSArray *items))completion {
4161  NSDictionary *rparams = @{};
4162  [self.client sendRequestWithMethod:@"keybase.1.user.listTrackersSelf" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
4163    if (error) {
4164      completion(error, nil);
4165      return;
4166    }
4167    NSArray *results = retval ? [MTLJSONAdapter modelsOfClass:KBRTracker.class fromJSONArray:retval error:&error] : nil;
4168    completion(error, results);
4169  }];
4170}
4171
4172- (void)loadUncheckedUserSummaries:(KBRLoadUncheckedUserSummariesRequestParams *)params completion:(void (^)(NSError *error, NSArray *items))completion {
4173  NSDictionary *rparams = @{@"uids": KBRValue(params.uids)};
4174  [self.client sendRequestWithMethod:@"keybase.1.user.loadUncheckedUserSummaries" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
4175    if (error) {
4176      completion(error, nil);
4177      return;
4178    }
4179    NSArray *results = retval ? [MTLJSONAdapter modelsOfClass:KBRUserSummary.class fromJSONArray:retval error:&error] : nil;
4180    completion(error, results);
4181  }];
4182}
4183
4184- (void)loadUncheckedUserSummariesWithUids:(NSArray *)uids completion:(void (^)(NSError *error, NSArray *items))completion {
4185  NSDictionary *rparams = @{@"uids": KBRValue(uids)};
4186  [self.client sendRequestWithMethod:@"keybase.1.user.loadUncheckedUserSummaries" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
4187    if (error) {
4188      completion(error, nil);
4189      return;
4190    }
4191    NSArray *results = retval ? [MTLJSONAdapter modelsOfClass:KBRUserSummary.class fromJSONArray:retval error:&error] : nil;
4192    completion(error, results);
4193  }];
4194}
4195
4196- (void)loadUser:(KBRLoadUserRequestParams *)params completion:(void (^)(NSError *error, KBRUser *user))completion {
4197  NSDictionary *rparams = @{@"uid": KBRValue(params.uid)};
4198  [self.client sendRequestWithMethod:@"keybase.1.user.loadUser" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
4199    if (error) {
4200      completion(error, nil);
4201      return;
4202    }
4203    KBRUser *result = retval ? [MTLJSONAdapter modelOfClass:KBRUser.class fromJSONDictionary:retval error:&error] : nil;
4204    completion(error, result);
4205  }];
4206}
4207
4208- (void)loadUserWithUid:(NSString *)uid completion:(void (^)(NSError *error, KBRUser *user))completion {
4209  NSDictionary *rparams = @{@"uid": KBRValue(uid)};
4210  [self.client sendRequestWithMethod:@"keybase.1.user.loadUser" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
4211    if (error) {
4212      completion(error, nil);
4213      return;
4214    }
4215    KBRUser *result = retval ? [MTLJSONAdapter modelOfClass:KBRUser.class fromJSONDictionary:retval error:&error] : nil;
4216    completion(error, result);
4217  }];
4218}
4219
4220- (void)loadUserByName:(KBRLoadUserByNameRequestParams *)params completion:(void (^)(NSError *error, KBRUser *user))completion {
4221  NSDictionary *rparams = @{@"username": KBRValue(params.username)};
4222  [self.client sendRequestWithMethod:@"keybase.1.user.loadUserByName" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
4223    if (error) {
4224      completion(error, nil);
4225      return;
4226    }
4227    KBRUser *result = retval ? [MTLJSONAdapter modelOfClass:KBRUser.class fromJSONDictionary:retval error:&error] : nil;
4228    completion(error, result);
4229  }];
4230}
4231
4232- (void)loadUserByNameWithUsername:(NSString *)username completion:(void (^)(NSError *error, KBRUser *user))completion {
4233  NSDictionary *rparams = @{@"username": KBRValue(username)};
4234  [self.client sendRequestWithMethod:@"keybase.1.user.loadUserByName" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
4235    if (error) {
4236      completion(error, nil);
4237      return;
4238    }
4239    KBRUser *result = retval ? [MTLJSONAdapter modelOfClass:KBRUser.class fromJSONDictionary:retval error:&error] : nil;
4240    completion(error, result);
4241  }];
4242}
4243
4244- (void)loadUserPlusKeys:(KBRLoadUserPlusKeysRequestParams *)params completion:(void (^)(NSError *error, KBRUserPlusKeys *userPlusKeys))completion {
4245  NSDictionary *rparams = @{@"uid": KBRValue(params.uid)};
4246  [self.client sendRequestWithMethod:@"keybase.1.user.loadUserPlusKeys" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
4247    if (error) {
4248      completion(error, nil);
4249      return;
4250    }
4251    KBRUserPlusKeys *result = retval ? [MTLJSONAdapter modelOfClass:KBRUserPlusKeys.class fromJSONDictionary:retval error:&error] : nil;
4252    completion(error, result);
4253  }];
4254}
4255
4256- (void)loadUserPlusKeysWithUid:(NSString *)uid completion:(void (^)(NSError *error, KBRUserPlusKeys *userPlusKeys))completion {
4257  NSDictionary *rparams = @{@"uid": KBRValue(uid)};
4258  [self.client sendRequestWithMethod:@"keybase.1.user.loadUserPlusKeys" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
4259    if (error) {
4260      completion(error, nil);
4261      return;
4262    }
4263    KBRUserPlusKeys *result = retval ? [MTLJSONAdapter modelOfClass:KBRUserPlusKeys.class fromJSONDictionary:retval error:&error] : nil;
4264    completion(error, result);
4265  }];
4266}
4267
4268- (void)loadPublicKeys:(KBRLoadPublicKeysRequestParams *)params completion:(void (^)(NSError *error, NSArray *items))completion {
4269  NSDictionary *rparams = @{@"uid": KBRValue(params.uid)};
4270  [self.client sendRequestWithMethod:@"keybase.1.user.loadPublicKeys" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
4271    if (error) {
4272      completion(error, nil);
4273      return;
4274    }
4275    NSArray *results = retval ? [MTLJSONAdapter modelsOfClass:KBRPublicKey.class fromJSONArray:retval error:&error] : nil;
4276    completion(error, results);
4277  }];
4278}
4279
4280- (void)loadPublicKeysWithUid:(NSString *)uid completion:(void (^)(NSError *error, NSArray *items))completion {
4281  NSDictionary *rparams = @{@"uid": KBRValue(uid)};
4282  [self.client sendRequestWithMethod:@"keybase.1.user.loadPublicKeys" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
4283    if (error) {
4284      completion(error, nil);
4285      return;
4286    }
4287    NSArray *results = retval ? [MTLJSONAdapter modelsOfClass:KBRPublicKey.class fromJSONArray:retval error:&error] : nil;
4288    completion(error, results);
4289  }];
4290}
4291
4292- (void)loadMyPublicKeys:(void (^)(NSError *error, NSArray *items))completion {
4293  NSDictionary *rparams = @{};
4294  [self.client sendRequestWithMethod:@"keybase.1.user.loadMyPublicKeys" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
4295    if (error) {
4296      completion(error, nil);
4297      return;
4298    }
4299    NSArray *results = retval ? [MTLJSONAdapter modelsOfClass:KBRPublicKey.class fromJSONArray:retval error:&error] : nil;
4300    completion(error, results);
4301  }];
4302}
4303
4304- (void)loadMySettings:(void (^)(NSError *error, KBRUserSettings *userSettings))completion {
4305  NSDictionary *rparams = @{};
4306  [self.client sendRequestWithMethod:@"keybase.1.user.loadMySettings" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
4307    if (error) {
4308      completion(error, nil);
4309      return;
4310    }
4311    KBRUserSettings *result = retval ? [MTLJSONAdapter modelOfClass:KBRUserSettings.class fromJSONDictionary:retval error:&error] : nil;
4312    completion(error, result);
4313  }];
4314}
4315
4316- (void)listTracking:(KBRListTrackingRequestParams *)params completion:(void (^)(NSError *error, NSArray *items))completion {
4317  NSDictionary *rparams = @{@"filter": KBRValue(params.filter), @"assertion": KBRValue(params.assertion)};
4318  [self.client sendRequestWithMethod:@"keybase.1.user.listTracking" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
4319    if (error) {
4320      completion(error, nil);
4321      return;
4322    }
4323    NSArray *results = retval ? [MTLJSONAdapter modelsOfClass:KBRUserSummary.class fromJSONArray:retval error:&error] : nil;
4324    completion(error, results);
4325  }];
4326}
4327
4328- (void)listTrackingWithFilter:(NSString *)filter assertion:(NSString *)assertion completion:(void (^)(NSError *error, NSArray *items))completion {
4329  NSDictionary *rparams = @{@"filter": KBRValue(filter), @"assertion": KBRValue(assertion)};
4330  [self.client sendRequestWithMethod:@"keybase.1.user.listTracking" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
4331    if (error) {
4332      completion(error, nil);
4333      return;
4334    }
4335    NSArray *results = retval ? [MTLJSONAdapter modelsOfClass:KBRUserSummary.class fromJSONArray:retval error:&error] : nil;
4336    completion(error, results);
4337  }];
4338}
4339
4340- (void)listTrackingJSON:(KBRListTrackingJSONRequestParams *)params completion:(void (^)(NSError *error, NSString *str))completion {
4341  NSDictionary *rparams = @{@"filter": KBRValue(params.filter), @"verbose": @(params.verbose), @"assertion": KBRValue(params.assertion)};
4342  [self.client sendRequestWithMethod:@"keybase.1.user.listTrackingJSON" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
4343    if (error) {
4344      completion(error, nil);
4345      return;
4346    }
4347    NSString *result = retval ? [MTLJSONAdapter modelOfClass:NSString.class fromJSONDictionary:retval error:&error] : nil;
4348    completion(error, result);
4349  }];
4350}
4351
4352- (void)listTrackingJSONWithFilter:(NSString *)filter verbose:(BOOL)verbose assertion:(NSString *)assertion completion:(void (^)(NSError *error, NSString *str))completion {
4353  NSDictionary *rparams = @{@"filter": KBRValue(filter), @"verbose": @(verbose), @"assertion": KBRValue(assertion)};
4354  [self.client sendRequestWithMethod:@"keybase.1.user.listTrackingJSON" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
4355    if (error) {
4356      completion(error, nil);
4357      return;
4358    }
4359    NSString *result = retval ? [MTLJSONAdapter modelOfClass:NSString.class fromJSONDictionary:retval error:&error] : nil;
4360    completion(error, result);
4361  }];
4362}
4363
4364- (void)search:(KBRSearchRequestParams *)params completion:(void (^)(NSError *error, NSArray *items))completion {
4365  NSDictionary *rparams = @{@"query": KBRValue(params.query)};
4366  [self.client sendRequestWithMethod:@"keybase.1.user.search" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
4367    if (error) {
4368      completion(error, nil);
4369      return;
4370    }
4371    NSArray *results = retval ? [MTLJSONAdapter modelsOfClass:KBRSearchResult.class fromJSONArray:retval error:&error] : nil;
4372    completion(error, results);
4373  }];
4374}
4375
4376- (void)searchWithQuery:(NSString *)query completion:(void (^)(NSError *error, NSArray *items))completion {
4377  NSDictionary *rparams = @{@"query": KBRValue(query)};
4378  [self.client sendRequestWithMethod:@"keybase.1.user.search" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
4379    if (error) {
4380      completion(error, nil);
4381      return;
4382    }
4383    NSArray *results = retval ? [MTLJSONAdapter modelsOfClass:KBRSearchResult.class fromJSONArray:retval error:&error] : nil;
4384    completion(error, results);
4385  }];
4386}
4387
4388- (void)loadAllPublicKeysUnverified:(KBRLoadAllPublicKeysUnverifiedRequestParams *)params completion:(void (^)(NSError *error, NSArray *items))completion {
4389  NSDictionary *rparams = @{@"uid": KBRValue(params.uid)};
4390  [self.client sendRequestWithMethod:@"keybase.1.user.loadAllPublicKeysUnverified" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
4391    if (error) {
4392      completion(error, nil);
4393      return;
4394    }
4395    NSArray *results = retval ? [MTLJSONAdapter modelsOfClass:KBRPublicKey.class fromJSONArray:retval error:&error] : nil;
4396    completion(error, results);
4397  }];
4398}
4399
4400- (void)loadAllPublicKeysUnverifiedWithUid:(NSString *)uid completion:(void (^)(NSError *error, NSArray *items))completion {
4401  NSDictionary *rparams = @{@"uid": KBRValue(uid)};
4402  [self.client sendRequestWithMethod:@"keybase.1.user.loadAllPublicKeysUnverified" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
4403    if (error) {
4404      completion(error, nil);
4405      return;
4406    }
4407    NSArray *results = retval ? [MTLJSONAdapter modelsOfClass:KBRPublicKey.class fromJSONArray:retval error:&error] : nil;
4408    completion(error, results);
4409  }];
4410}
4411
4412- (void)listTrackers2:(KBRListTrackers2RequestParams *)params completion:(void (^)(NSError *error, KBRUserSummary2Set *userSummary2Set))completion {
4413  NSDictionary *rparams = @{@"assertion": KBRValue(params.assertion), @"reverse": @(params.reverse)};
4414  [self.client sendRequestWithMethod:@"keybase.1.user.listTrackers2" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
4415    if (error) {
4416      completion(error, nil);
4417      return;
4418    }
4419    KBRUserSummary2Set *result = retval ? [MTLJSONAdapter modelOfClass:KBRUserSummary2Set.class fromJSONDictionary:retval error:&error] : nil;
4420    completion(error, result);
4421  }];
4422}
4423
4424- (void)listTrackers2WithAssertion:(NSString *)assertion reverse:(BOOL)reverse completion:(void (^)(NSError *error, KBRUserSummary2Set *userSummary2Set))completion {
4425  NSDictionary *rparams = @{@"assertion": KBRValue(assertion), @"reverse": @(reverse)};
4426  [self.client sendRequestWithMethod:@"keybase.1.user.listTrackers2" params:rparams sessionId:self.sessionId completion:^(NSError *error, id retval) {
4427    if (error) {
4428      completion(error, nil);
4429      return;
4430    }
4431    KBRUserSummary2Set *result = retval ? [MTLJSONAdapter modelOfClass:KBRUserSummary2Set.class fromJSONDictionary:retval error:&error] : nil;
4432    completion(error, result);
4433  }];
4434}
4435
4436@end
4437@implementation KBRDisplayTLFCreateWithInviteRequestParams
4438
4439- (instancetype)initWithParams:(NSArray *)params {
4440  if ((self = [super initWithParams:params])) {
4441    self.sessionID = [params[0][@"sessionID"] integerValue];
4442    self.folderName = params[0][@"folderName"];
4443    self.isPrivate = [params[0][@"isPrivate"] boolValue];
4444    self.assertion = params[0][@"assertion"];
4445    self.socialAssertion = [MTLJSONAdapter modelOfClass:KBRSocialAssertion.class fromJSONDictionary:params[0][@"socialAssertion"] error:nil];
4446    self.inviteLink = params[0][@"inviteLink"];
4447    self.throttled = [params[0][@"throttled"] boolValue];
4448  }
4449  return self;
4450}
4451
4452+ (instancetype)params {
4453  KBRDisplayTLFCreateWithInviteRequestParams *p = [[self alloc] init];
4454  // Add default values
4455  return p;
4456}
4457@end
4458
4459@implementation KBRStartRequestParams
4460
4461- (instancetype)initWithParams:(NSArray *)params {
4462  if ((self = [super initWithParams:params])) {
4463    self.sessionID = [params[0][@"sessionID"] integerValue];
4464    self.username = params[0][@"username"];
4465    self.reason = [MTLJSONAdapter modelOfClass:KBRIdentifyReason.class fromJSONDictionary:params[0][@"reason"] error:nil];
4466    self.forceDisplay = [params[0][@"forceDisplay"] boolValue];
4467  }
4468  return self;
4469}
4470
4471+ (instancetype)params {
4472  KBRStartRequestParams *p = [[self alloc] init];
4473  // Add default values
4474  p.forceDisplay = false;
4475  return p;
4476}
4477@end
4478
4479@implementation KBRDisplayKeyRequestParams
4480
4481- (instancetype)initWithParams:(NSArray *)params {
4482  if ((self = [super initWithParams:params])) {
4483    self.sessionID = [params[0][@"sessionID"] integerValue];
4484    self.key = [MTLJSONAdapter modelOfClass:KBRIdentifyKey.class fromJSONDictionary:params[0][@"key"] error:nil];
4485  }
4486  return self;
4487}
4488
4489+ (instancetype)params {
4490  KBRDisplayKeyRequestParams *p = [[self alloc] init];
4491  // Add default values
4492  return p;
4493}
4494@end
4495
4496@implementation KBRReportLastTrackRequestParams
4497
4498- (instancetype)initWithParams:(NSArray *)params {
4499  if ((self = [super initWithParams:params])) {
4500    self.sessionID = [params[0][@"sessionID"] integerValue];
4501    self.track = [MTLJSONAdapter modelOfClass:KBRTrackSummary.class fromJSONDictionary:params[0][@"track"] error:nil];
4502  }
4503  return self;
4504}
4505
4506+ (instancetype)params {
4507  KBRReportLastTrackRequestParams *p = [[self alloc] init];
4508  // Add default values
4509  return p;
4510}
4511@end
4512
4513@implementation KBRLaunchNetworkChecksRequestParams
4514
4515- (instancetype)initWithParams:(NSArray *)params {
4516  if ((self = [super initWithParams:params])) {
4517    self.sessionID = [params[0][@"sessionID"] integerValue];
4518    self.identity = [MTLJSONAdapter modelOfClass:KBRIdentity.class fromJSONDictionary:params[0][@"identity"] error:nil];
4519    self.user = [MTLJSONAdapter modelOfClass:KBRUser.class fromJSONDictionary:params[0][@"user"] error:nil];
4520  }
4521  return self;
4522}
4523
4524+ (instancetype)params {
4525  KBRLaunchNetworkChecksRequestParams *p = [[self alloc] init];
4526  // Add default values
4527  return p;
4528}
4529@end
4530
4531@implementation KBRDisplayTrackStatementRequestParams
4532
4533- (instancetype)initWithParams:(NSArray *)params {
4534  if ((self = [super initWithParams:params])) {
4535    self.sessionID = [params[0][@"sessionID"] integerValue];
4536    self.stmt = params[0][@"stmt"];
4537  }
4538  return self;
4539}
4540
4541+ (instancetype)params {
4542  KBRDisplayTrackStatementRequestParams *p = [[self alloc] init];
4543  // Add default values
4544  return p;
4545}
4546@end
4547
4548@implementation KBRFinishWebProofCheckRequestParams
4549
4550- (instancetype)initWithParams:(NSArray *)params {
4551  if ((self = [super initWithParams:params])) {
4552    self.sessionID = [params[0][@"sessionID"] integerValue];
4553    self.rp = [MTLJSONAdapter modelOfClass:KBRRemoteProof.class fromJSONDictionary:params[0][@"rp"] error:nil];
4554    self.lcr = [MTLJSONAdapter modelOfClass:KBRLinkCheckResult.class fromJSONDictionary:params[0][@"lcr"] error:nil];
4555  }
4556  return self;
4557}
4558
4559+ (instancetype)params {
4560  KBRFinishWebProofCheckRequestParams *p = [[self alloc] init];
4561  // Add default values
4562  return p;
4563}
4564@end
4565
4566@implementation KBRFinishSocialProofCheckRequestParams
4567
4568- (instancetype)initWithParams:(NSArray *)params {
4569  if ((self = [super initWithParams:params])) {
4570    self.sessionID = [params[0][@"sessionID"] integerValue];
4571    self.rp = [MTLJSONAdapter modelOfClass:KBRRemoteProof.class fromJSONDictionary:params[0][@"rp"] error:nil];
4572    self.lcr = [MTLJSONAdapter modelOfClass:KBRLinkCheckResult.class fromJSONDictionary:params[0][@"lcr"] error:nil];
4573  }
4574  return self;
4575}
4576
4577+ (instancetype)params {
4578  KBRFinishSocialProofCheckRequestParams *p = [[self alloc] init];
4579  // Add default values
4580  return p;
4581}
4582@end
4583
4584@implementation KBRDisplayCryptocurrencyRequestParams
4585
4586- (instancetype)initWithParams:(NSArray *)params {
4587  if ((self = [super initWithParams:params])) {
4588    self.sessionID = [params[0][@"sessionID"] integerValue];
4589    self.c = [MTLJSONAdapter modelOfClass:KBRCryptocurrency.class fromJSONDictionary:params[0][@"c"] error:nil];
4590  }
4591  return self;
4592}
4593
4594+ (instancetype)params {
4595  KBRDisplayCryptocurrencyRequestParams *p = [[self alloc] init];
4596  // Add default values
4597  return p;
4598}
4599@end
4600
4601@implementation KBRReportTrackTokenRequestParams
4602
4603- (instancetype)initWithParams:(NSArray *)params {
4604  if ((self = [super initWithParams:params])) {
4605    self.sessionID = [params[0][@"sessionID"] integerValue];
4606    self.trackToken = params[0][@"trackToken"];
4607  }
4608  return self;
4609}
4610
4611+ (instancetype)params {
4612  KBRReportTrackTokenRequestParams *p = [[self alloc] init];
4613  // Add default values
4614  return p;
4615}
4616@end
4617
4618@implementation KBRDisplayUserCardRequestParams
4619
4620- (instancetype)initWithParams:(NSArray *)params {
4621  if ((self = [super initWithParams:params])) {
4622    self.sessionID = [params[0][@"sessionID"] integerValue];
4623    self.card = [MTLJSONAdapter modelOfClass:KBRUserCard.class fromJSONDictionary:params[0][@"card"] error:nil];
4624  }
4625  return self;
4626}
4627
4628+ (instancetype)params {
4629  KBRDisplayUserCardRequestParams *p = [[self alloc] init];
4630  // Add default values
4631  return p;
4632}
4633@end
4634
4635@implementation KBRConfirmRequestParams
4636
4637- (instancetype)initWithParams:(NSArray *)params {
4638  if ((self = [super initWithParams:params])) {
4639    self.sessionID = [params[0][@"sessionID"] integerValue];
4640    self.outcome = [MTLJSONAdapter modelOfClass:KBRIdentifyOutcome.class fromJSONDictionary:params[0][@"outcome"] error:nil];
4641  }
4642  return self;
4643}
4644
4645+ (instancetype)params {
4646  KBRConfirmRequestParams *p = [[self alloc] init];
4647  // Add default values
4648  return p;
4649}
4650@end
4651
4652@implementation KBRCancelRequestParams
4653
4654- (instancetype)initWithParams:(NSArray *)params {
4655  if ((self = [super initWithParams:params])) {
4656    self.sessionID = [params[0][@"sessionID"] integerValue];
4657  }
4658  return self;
4659}
4660
4661+ (instancetype)params {
4662  KBRCancelRequestParams *p = [[self alloc] init];
4663  // Add default values
4664  return p;
4665}
4666@end
4667
4668@implementation KBRFinishRequestParams
4669
4670- (instancetype)initWithParams:(NSArray *)params {
4671  if ((self = [super initWithParams:params])) {
4672    self.sessionID = [params[0][@"sessionID"] integerValue];
4673  }
4674  return self;
4675}
4676
4677+ (instancetype)params {
4678  KBRFinishRequestParams *p = [[self alloc] init];
4679  // Add default values
4680  return p;
4681}
4682@end
4683
4684@implementation KBRDismissRequestParams
4685
4686- (instancetype)initWithParams:(NSArray *)params {
4687  if ((self = [super initWithParams:params])) {
4688    self.sessionID = [params[0][@"sessionID"] integerValue];
4689    self.username = params[0][@"username"];
4690    self.reason = [MTLJSONAdapter modelOfClass:KBRDismissReason.class fromJSONDictionary:params[0][@"reason"] error:nil];
4691  }
4692  return self;
4693}
4694
4695+ (instancetype)params {
4696  KBRDismissRequestParams *p = [[self alloc] init];
4697  // Add default values
4698  return p;
4699}
4700@end
4701
4702@implementation KBRSaltpackPromptForDecryptRequestParams
4703
4704- (instancetype)initWithParams:(NSArray *)params {
4705  if ((self = [super initWithParams:params])) {
4706    self.sessionID = [params[0][@"sessionID"] integerValue];
4707    self.sender = [MTLJSONAdapter modelOfClass:KBRSaltpackSender.class fromJSONDictionary:params[0][@"sender"] error:nil];
4708    self.usedDelegateUI = [params[0][@"usedDelegateUI"] boolValue];
4709  }
4710  return self;
4711}
4712
4713+ (instancetype)params {
4714  KBRSaltpackPromptForDecryptRequestParams *p = [[self alloc] init];
4715  // Add default values
4716  return p;
4717}
4718@end
4719
4720@implementation KBRSaltpackVerifySuccessRequestParams
4721
4722- (instancetype)initWithParams:(NSArray *)params {
4723  if ((self = [super initWithParams:params])) {
4724    self.sessionID = [params[0][@"sessionID"] integerValue];
4725    self.signingKID = params[0][@"signingKID"];
4726    self.sender = [MTLJSONAdapter modelOfClass:KBRSaltpackSender.class fromJSONDictionary:params[0][@"sender"] error:nil];
4727  }
4728  return self;
4729}
4730
4731+ (instancetype)params {
4732  KBRSaltpackVerifySuccessRequestParams *p = [[self alloc] init];
4733  // Add default values
4734  return p;
4735}
4736@end
4737
4738@implementation KBRPassphraseChangeRequestParams
4739
4740- (instancetype)initWithParams:(NSArray *)params {
4741  if ((self = [super initWithParams:params])) {
4742    self.sessionID = [params[0][@"sessionID"] integerValue];
4743    self.oldPassphrase = params[0][@"oldPassphrase"];
4744    self.passphrase = params[0][@"passphrase"];
4745    self.force = [params[0][@"force"] boolValue];
4746  }
4747  return self;
4748}
4749
4750+ (instancetype)params {
4751  KBRPassphraseChangeRequestParams *p = [[self alloc] init];
4752  // Add default values
4753  return p;
4754}
4755@end
4756
4757@implementation KBRPassphrasePromptRequestParams
4758
4759- (instancetype)initWithParams:(NSArray *)params {
4760  if ((self = [super initWithParams:params])) {
4761    self.sessionID = [params[0][@"sessionID"] integerValue];
4762    self.guiArg = [MTLJSONAdapter modelOfClass:KBRGUIEntryArg.class fromJSONDictionary:params[0][@"guiArg"] error:nil];
4763  }
4764  return self;
4765}
4766
4767+ (instancetype)params {
4768  KBRPassphrasePromptRequestParams *p = [[self alloc] init];
4769  // Add default values
4770  return p;
4771}
4772@end
4773
4774@implementation KBREmailChangeRequestParams
4775
4776- (instancetype)initWithParams:(NSArray *)params {
4777  if ((self = [super initWithParams:params])) {
4778    self.sessionID = [params[0][@"sessionID"] integerValue];
4779    self.emailNew = params[0][@"emailNew"];
4780  }
4781  return self;
4782}
4783
4784+ (instancetype)params {
4785  KBREmailChangeRequestParams *p = [[self alloc] init];
4786  // Add default values
4787  return p;
4788}
4789@end
4790
4791@implementation KBRHasServerKeysRequestParams
4792
4793- (instancetype)initWithParams:(NSArray *)params {
4794  if ((self = [super initWithParams:params])) {
4795    self.sessionID = [params[0][@"sessionID"] integerValue];
4796  }
4797  return self;
4798}
4799
4800+ (instancetype)params {
4801  KBRHasServerKeysRequestParams *p = [[self alloc] init];
4802  // Add default values
4803  return p;
4804}
4805@end
4806
4807@implementation KBRGetRequestParams
4808
4809- (instancetype)initWithParams:(NSArray *)params {
4810  if ((self = [super initWithParams:params])) {
4811    self.endpoint = params[0][@"endpoint"];
4812    self.args = [MTLJSONAdapter modelsOfClass:KBRStringKVPair.class fromJSONArray:params[0][@"args"] error:nil];
4813    self.httpStatus = KBRValidateArray(params[0][@"httpStatus"], NSNumber.class);
4814    self.appStatusCode = KBRValidateArray(params[0][@"appStatusCode"], NSNumber.class);
4815  }
4816  return self;
4817}
4818
4819+ (instancetype)params {
4820  KBRGetRequestParams *p = [[self alloc] init];
4821  // Add default values
4822  return p;
4823}
4824@end
4825
4826@implementation KBRPostRequestParams
4827
4828- (instancetype)initWithParams:(NSArray *)params {
4829  if ((self = [super initWithParams:params])) {
4830    self.endpoint = params[0][@"endpoint"];
4831    self.args = [MTLJSONAdapter modelsOfClass:KBRStringKVPair.class fromJSONArray:params[0][@"args"] error:nil];
4832    self.httpStatus = KBRValidateArray(params[0][@"httpStatus"], NSNumber.class);
4833    self.appStatusCode = KBRValidateArray(params[0][@"appStatusCode"], NSNumber.class);
4834  }
4835  return self;
4836}
4837
4838+ (instancetype)params {
4839  KBRPostRequestParams *p = [[self alloc] init];
4840  // Add default values
4841  return p;
4842}
4843@end
4844
4845@implementation KBRPostJSONRequestParams
4846
4847- (instancetype)initWithParams:(NSArray *)params {
4848  if ((self = [super initWithParams:params])) {
4849    self.endpoint = params[0][@"endpoint"];
4850    self.args = [MTLJSONAdapter modelsOfClass:KBRStringKVPair.class fromJSONArray:params[0][@"args"] error:nil];
4851    self.JSONPayload = [MTLJSONAdapter modelsOfClass:KBRStringKVPair.class fromJSONArray:params[0][@"JSONPayload"] error:nil];
4852    self.httpStatus = KBRValidateArray(params[0][@"httpStatus"], NSNumber.class);
4853    self.appStatusCode = KBRValidateArray(params[0][@"appStatusCode"], NSNumber.class);
4854  }
4855  return self;
4856}
4857
4858+ (instancetype)params {
4859  KBRPostJSONRequestParams *p = [[self alloc] init];
4860  // Add default values
4861  return p;
4862}
4863@end
4864
4865@implementation KBRAuthenticateSessionRequestParams
4866
4867- (instancetype)initWithParams:(NSArray *)params {
4868  if ((self = [super initWithParams:params])) {
4869    self.signature = params[0][@"signature"];
4870  }
4871  return self;
4872}
4873
4874+ (instancetype)params {
4875  KBRAuthenticateSessionRequestParams *p = [[self alloc] init];
4876  // Add default values
4877  return p;
4878}
4879@end
4880
4881@implementation KBRPutBlockRequestParams
4882
4883- (instancetype)initWithParams:(NSArray *)params {
4884  if ((self = [super initWithParams:params])) {
4885    self.bid = [MTLJSONAdapter modelOfClass:KBRBlockIdCombo.class fromJSONDictionary:params[0][@"bid"] error:nil];
4886    self.folder = params[0][@"folder"];
4887    self.blockKey = params[0][@"blockKey"];
4888    self.buf = params[0][@"buf"];
4889  }
4890  return self;
4891}
4892
4893+ (instancetype)params {
4894  KBRPutBlockRequestParams *p = [[self alloc] init];
4895  // Add default values
4896  return p;
4897}
4898@end
4899
4900@implementation KBRGetBlockRequestParams
4901
4902- (instancetype)initWithParams:(NSArray *)params {
4903  if ((self = [super initWithParams:params])) {
4904    self.bid = [MTLJSONAdapter modelOfClass:KBRBlockIdCombo.class fromJSONDictionary:params[0][@"bid"] error:nil];
4905    self.folder = params[0][@"folder"];
4906  }
4907  return self;
4908}
4909
4910+ (instancetype)params {
4911  KBRGetBlockRequestParams *p = [[self alloc] init];
4912  // Add default values
4913  return p;
4914}
4915@end
4916
4917@implementation KBRAddReferenceRequestParams
4918
4919- (instancetype)initWithParams:(NSArray *)params {
4920  if ((self = [super initWithParams:params])) {
4921    self.folder = params[0][@"folder"];
4922    self.ref = [MTLJSONAdapter modelOfClass:KBRBlockReference.class fromJSONDictionary:params[0][@"ref"] error:nil];
4923  }
4924  return self;
4925}
4926
4927+ (instancetype)params {
4928  KBRAddReferenceRequestParams *p = [[self alloc] init];
4929  // Add default values
4930  return p;
4931}
4932@end
4933
4934@implementation KBRDelReferenceRequestParams
4935
4936- (instancetype)initWithParams:(NSArray *)params {
4937  if ((self = [super initWithParams:params])) {
4938    self.folder = params[0][@"folder"];
4939    self.ref = [MTLJSONAdapter modelOfClass:KBRBlockReference.class fromJSONDictionary:params[0][@"ref"] error:nil];
4940  }
4941  return self;
4942}
4943
4944+ (instancetype)params {
4945  KBRDelReferenceRequestParams *p = [[self alloc] init];
4946  // Add default values
4947  return p;
4948}
4949@end
4950
4951@implementation KBRArchiveReferenceRequestParams
4952
4953- (instancetype)initWithParams:(NSArray *)params {
4954  if ((self = [super initWithParams:params])) {
4955    self.folder = params[0][@"folder"];
4956    self.refs = [MTLJSONAdapter modelsOfClass:KBRBlockReference.class fromJSONArray:params[0][@"refs"] error:nil];
4957  }
4958  return self;
4959}
4960
4961+ (instancetype)params {
4962  KBRArchiveReferenceRequestParams *p = [[self alloc] init];
4963  // Add default values
4964  return p;
4965}
4966@end
4967
4968@implementation KBRDelReferenceWithCountRequestParams
4969
4970- (instancetype)initWithParams:(NSArray *)params {
4971  if ((self = [super initWithParams:params])) {
4972    self.folder = params[0][@"folder"];
4973    self.refs = [MTLJSONAdapter modelsOfClass:KBRBlockReference.class fromJSONArray:params[0][@"refs"] error:nil];
4974  }
4975  return self;
4976}
4977
4978+ (instancetype)params {
4979  KBRDelReferenceWithCountRequestParams *p = [[self alloc] init];
4980  // Add default values
4981  return p;
4982}
4983@end
4984
4985@implementation KBRArchiveReferenceWithCountRequestParams
4986
4987- (instancetype)initWithParams:(NSArray *)params {
4988  if ((self = [super initWithParams:params])) {
4989    self.folder = params[0][@"folder"];
4990    self.refs = [MTLJSONAdapter modelsOfClass:KBRBlockReference.class fromJSONArray:params[0][@"refs"] error:nil];
4991  }
4992  return self;
4993}
4994
4995+ (instancetype)params {
4996  KBRArchiveReferenceWithCountRequestParams *p = [[self alloc] init];
4997  // Add default values
4998  return p;
4999}
5000@end
5001
5002@implementation KBRRegisterBTCRequestParams
5003
5004- (instancetype)initWithParams:(NSArray *)params {
5005  if ((self = [super initWithParams:params])) {
5006    self.sessionID = [params[0][@"sessionID"] integerValue];
5007    self.address = params[0][@"address"];
5008    self.force = [params[0][@"force"] boolValue];
5009  }
5010  return self;
5011}
5012
5013+ (instancetype)params {
5014  KBRRegisterBTCRequestParams *p = [[self alloc] init];
5015  // Add default values
5016  return p;
5017}
5018@end
5019
5020@implementation KBRGetCurrentStatusRequestParams
5021
5022- (instancetype)initWithParams:(NSArray *)params {
5023  if ((self = [super initWithParams:params])) {
5024    self.sessionID = [params[0][@"sessionID"] integerValue];
5025  }
5026  return self;
5027}
5028
5029+ (instancetype)params {
5030  KBRGetCurrentStatusRequestParams *p = [[self alloc] init];
5031  // Add default values
5032  return p;
5033}
5034@end
5035
5036@implementation KBRGetExtendedStatusRequestParams
5037
5038- (instancetype)initWithParams:(NSArray *)params {
5039  if ((self = [super initWithParams:params])) {
5040    self.sessionID = [params[0][@"sessionID"] integerValue];
5041  }
5042  return self;
5043}
5044
5045+ (instancetype)params {
5046  KBRGetExtendedStatusRequestParams *p = [[self alloc] init];
5047  // Add default values
5048  return p;
5049}
5050@end
5051
5052@implementation KBRGetConfigRequestParams
5053
5054- (instancetype)initWithParams:(NSArray *)params {
5055  if ((self = [super initWithParams:params])) {
5056    self.sessionID = [params[0][@"sessionID"] integerValue];
5057  }
5058  return self;
5059}
5060
5061+ (instancetype)params {
5062  KBRGetConfigRequestParams *p = [[self alloc] init];
5063  // Add default values
5064  return p;
5065}
5066@end
5067
5068@implementation KBRSetUserConfigRequestParams
5069
5070- (instancetype)initWithParams:(NSArray *)params {
5071  if ((self = [super initWithParams:params])) {
5072    self.sessionID = [params[0][@"sessionID"] integerValue];
5073    self.username = params[0][@"username"];
5074    self.key = params[0][@"key"];
5075    self.value = params[0][@"value"];
5076  }
5077  return self;
5078}
5079
5080+ (instancetype)params {
5081  KBRSetUserConfigRequestParams *p = [[self alloc] init];
5082  // Add default values
5083  return p;
5084}
5085@end
5086
5087@implementation KBRSetPathRequestParams
5088
5089- (instancetype)initWithParams:(NSArray *)params {
5090  if ((self = [super initWithParams:params])) {
5091    self.sessionID = [params[0][@"sessionID"] integerValue];
5092    self.path = params[0][@"path"];
5093  }
5094  return self;
5095}
5096
5097+ (instancetype)params {
5098  KBRSetPathRequestParams *p = [[self alloc] init];
5099  // Add default values
5100  return p;
5101}
5102@end
5103
5104@implementation KBRHelloIAmRequestParams
5105
5106- (instancetype)initWithParams:(NSArray *)params {
5107  if ((self = [super initWithParams:params])) {
5108    self.details = [MTLJSONAdapter modelOfClass:KBRClientDetails.class fromJSONDictionary:params[0][@"details"] error:nil];
5109  }
5110  return self;
5111}
5112
5113+ (instancetype)params {
5114  KBRHelloIAmRequestParams *p = [[self alloc] init];
5115  // Add default values
5116  return p;
5117}
5118@end
5119
5120@implementation KBRSetValueRequestParams
5121
5122- (instancetype)initWithParams:(NSArray *)params {
5123  if ((self = [super initWithParams:params])) {
5124    self.path = params[0][@"path"];
5125    self.value = [MTLJSONAdapter modelOfClass:KBRConfigValue.class fromJSONDictionary:params[0][@"value"] error:nil];
5126  }
5127  return self;
5128}
5129
5130+ (instancetype)params {
5131  KBRSetValueRequestParams *p = [[self alloc] init];
5132  // Add default values
5133  return p;
5134}
5135@end
5136
5137@implementation KBRClearValueRequestParams
5138
5139- (instancetype)initWithParams:(NSArray *)params {
5140  if ((self = [super initWithParams:params])) {
5141    self.path = params[0][@"path"];
5142  }
5143  return self;
5144}
5145
5146+ (instancetype)params {
5147  KBRClearValueRequestParams *p = [[self alloc] init];
5148  // Add default values
5149  return p;
5150}
5151@end
5152
5153@implementation KBRGetValueRequestParams
5154
5155- (instancetype)initWithParams:(NSArray *)params {
5156  if ((self = [super initWithParams:params])) {
5157    self.path = params[0][@"path"];
5158  }
5159  return self;
5160}
5161
5162+ (instancetype)params {
5163  KBRGetValueRequestParams *p = [[self alloc] init];
5164  // Add default values
5165  return p;
5166}
5167@end
5168
5169@implementation KBRWaitForClientRequestParams
5170
5171- (instancetype)initWithParams:(NSArray *)params {
5172  if ((self = [super initWithParams:params])) {
5173    self.clientType = [params[0][@"clientType"] integerValue];
5174    self.timeout = [params[0][@"timeout"] doubleValue];
5175  }
5176  return self;
5177}
5178
5179+ (instancetype)params {
5180  KBRWaitForClientRequestParams *p = [[self alloc] init];
5181  // Add default values
5182  return p;
5183}
5184@end
5185
5186@implementation KBRSignED25519RequestParams
5187
5188- (instancetype)initWithParams:(NSArray *)params {
5189  if ((self = [super initWithParams:params])) {
5190    self.sessionID = [params[0][@"sessionID"] integerValue];
5191    self.msg = params[0][@"msg"];
5192    self.reason = params[0][@"reason"];
5193  }
5194  return self;
5195}
5196
5197+ (instancetype)params {
5198  KBRSignED25519RequestParams *p = [[self alloc] init];
5199  // Add default values
5200  return p;
5201}
5202@end
5203
5204@implementation KBRSignED25519ForKBFSRequestParams
5205
5206- (instancetype)initWithParams:(NSArray *)params {
5207  if ((self = [super initWithParams:params])) {
5208    self.sessionID = [params[0][@"sessionID"] integerValue];
5209    self.msg = params[0][@"msg"];
5210    self.reason = params[0][@"reason"];
5211  }
5212  return self;
5213}
5214
5215+ (instancetype)params {
5216  KBRSignED25519ForKBFSRequestParams *p = [[self alloc] init];
5217  // Add default values
5218  return p;
5219}
5220@end
5221
5222@implementation KBRSignToStringRequestParams
5223
5224- (instancetype)initWithParams:(NSArray *)params {
5225  if ((self = [super initWithParams:params])) {
5226    self.sessionID = [params[0][@"sessionID"] integerValue];
5227    self.msg = params[0][@"msg"];
5228    self.reason = params[0][@"reason"];
5229  }
5230  return self;
5231}
5232
5233+ (instancetype)params {
5234  KBRSignToStringRequestParams *p = [[self alloc] init];
5235  // Add default values
5236  return p;
5237}
5238@end
5239
5240@implementation KBRUnboxBytes32RequestParams
5241
5242- (instancetype)initWithParams:(NSArray *)params {
5243  if ((self = [super initWithParams:params])) {
5244    self.sessionID = [params[0][@"sessionID"] integerValue];
5245    self.encryptedBytes32 = params[0][@"encryptedBytes32"];
5246    self.nonce = params[0][@"nonce"];
5247    self.peersPublicKey = params[0][@"peersPublicKey"];
5248    self.reason = params[0][@"reason"];
5249  }
5250  return self;
5251}
5252
5253+ (instancetype)params {
5254  KBRUnboxBytes32RequestParams *p = [[self alloc] init];
5255  // Add default values
5256  return p;
5257}
5258@end
5259
5260@implementation KBRUnboxBytes32AnyRequestParams
5261
5262- (instancetype)initWithParams:(NSArray *)params {
5263  if ((self = [super initWithParams:params])) {
5264    self.sessionID = [params[0][@"sessionID"] integerValue];
5265    self.bundles = [MTLJSONAdapter modelsOfClass:KBRCiphertextBundle.class fromJSONArray:params[0][@"bundles"] error:nil];
5266    self.reason = params[0][@"reason"];
5267    self.promptPaper = [params[0][@"promptPaper"] boolValue];
5268  }
5269  return self;
5270}
5271
5272+ (instancetype)params {
5273  KBRUnboxBytes32AnyRequestParams *p = [[self alloc] init];
5274  // Add default values
5275  return p;
5276}
5277@end
5278
5279@implementation KBRRegisterAddressRequestParams
5280
5281- (instancetype)initWithParams:(NSArray *)params {
5282  if ((self = [super initWithParams:params])) {
5283    self.sessionID = [params[0][@"sessionID"] integerValue];
5284    self.address = params[0][@"address"];
5285    self.force = [params[0][@"force"] boolValue];
5286    self.wantedFamily = params[0][@"wantedFamily"];
5287  }
5288  return self;
5289}
5290
5291+ (instancetype)params {
5292  KBRRegisterAddressRequestParams *p = [[self alloc] init];
5293  // Add default values
5294  return p;
5295}
5296@end
5297
5298@implementation KBRStopRequestParams
5299
5300- (instancetype)initWithParams:(NSArray *)params {
5301  if ((self = [super initWithParams:params])) {
5302    self.sessionID = [params[0][@"sessionID"] integerValue];
5303    self.exitCode = [params[0][@"exitCode"] integerValue];
5304  }
5305  return self;
5306}
5307
5308+ (instancetype)params {
5309  KBRStopRequestParams *p = [[self alloc] init];
5310  // Add default values
5311  return p;
5312}
5313@end
5314
5315@implementation KBRLogRotateRequestParams
5316
5317- (instancetype)initWithParams:(NSArray *)params {
5318  if ((self = [super initWithParams:params])) {
5319    self.sessionID = [params[0][@"sessionID"] integerValue];
5320  }
5321  return self;
5322}
5323
5324+ (instancetype)params {
5325  KBRLogRotateRequestParams *p = [[self alloc] init];
5326  // Add default values
5327  return p;
5328}
5329@end
5330
5331@implementation KBRReloadRequestParams
5332
5333- (instancetype)initWithParams:(NSArray *)params {
5334  if ((self = [super initWithParams:params])) {
5335    self.sessionID = [params[0][@"sessionID"] integerValue];
5336  }
5337  return self;
5338}
5339
5340+ (instancetype)params {
5341  KBRReloadRequestParams *p = [[self alloc] init];
5342  // Add default values
5343  return p;
5344}
5345@end
5346
5347@implementation KBRDbNukeRequestParams
5348
5349- (instancetype)initWithParams:(NSArray *)params {
5350  if ((self = [super initWithParams:params])) {
5351    self.sessionID = [params[0][@"sessionID"] integerValue];
5352  }
5353  return self;
5354}
5355
5356+ (instancetype)params {
5357  KBRDbNukeRequestParams *p = [[self alloc] init];
5358  // Add default values
5359  return p;
5360}
5361@end
5362
5363@implementation KBRAppExitRequestParams
5364
5365- (instancetype)initWithParams:(NSArray *)params {
5366  if ((self = [super initWithParams:params])) {
5367    self.sessionID = [params[0][@"sessionID"] integerValue];
5368  }
5369  return self;
5370}
5371
5372+ (instancetype)params {
5373  KBRAppExitRequestParams *p = [[self alloc] init];
5374  // Add default values
5375  return p;
5376}
5377@end
5378
5379@implementation KBRFirstStepRequestParams
5380
5381- (instancetype)initWithParams:(NSArray *)params {
5382  if ((self = [super initWithParams:params])) {
5383    self.sessionID = [params[0][@"sessionID"] integerValue];
5384    self.val = [params[0][@"val"] integerValue];
5385  }
5386  return self;
5387}
5388
5389+ (instancetype)params {
5390  KBRFirstStepRequestParams *p = [[self alloc] init];
5391  // Add default values
5392  return p;
5393}
5394@end
5395
5396@implementation KBRSecondStepRequestParams
5397
5398- (instancetype)initWithParams:(NSArray *)params {
5399  if ((self = [super initWithParams:params])) {
5400    self.sessionID = [params[0][@"sessionID"] integerValue];
5401    self.val = [params[0][@"val"] integerValue];
5402  }
5403  return self;
5404}
5405
5406+ (instancetype)params {
5407  KBRSecondStepRequestParams *p = [[self alloc] init];
5408  // Add default values
5409  return p;
5410}
5411@end
5412
5413@implementation KBRIncrementRequestParams
5414
5415- (instancetype)initWithParams:(NSArray *)params {
5416  if ((self = [super initWithParams:params])) {
5417    self.sessionID = [params[0][@"sessionID"] integerValue];
5418    self.val = [params[0][@"val"] integerValue];
5419  }
5420  return self;
5421}
5422
5423+ (instancetype)params {
5424  KBRIncrementRequestParams *p = [[self alloc] init];
5425  // Add default values
5426  return p;
5427}
5428@end
5429
5430@implementation KBRDeviceListRequestParams
5431
5432- (instancetype)initWithParams:(NSArray *)params {
5433  if ((self = [super initWithParams:params])) {
5434    self.sessionID = [params[0][@"sessionID"] integerValue];
5435  }
5436  return self;
5437}
5438
5439+ (instancetype)params {
5440  KBRDeviceListRequestParams *p = [[self alloc] init];
5441  // Add default values
5442  return p;
5443}
5444@end
5445
5446@implementation KBRDeviceHistoryListRequestParams
5447
5448- (instancetype)initWithParams:(NSArray *)params {
5449  if ((self = [super initWithParams:params])) {
5450    self.sessionID = [params[0][@"sessionID"] integerValue];
5451  }
5452  return self;
5453}
5454
5455+ (instancetype)params {
5456  KBRDeviceHistoryListRequestParams *p = [[self alloc] init];
5457  // Add default values
5458  return p;
5459}
5460@end
5461
5462@implementation KBRDeviceAddRequestParams
5463
5464- (instancetype)initWithParams:(NSArray *)params {
5465  if ((self = [super initWithParams:params])) {
5466    self.sessionID = [params[0][@"sessionID"] integerValue];
5467  }
5468  return self;
5469}
5470
5471+ (instancetype)params {
5472  KBRDeviceAddRequestParams *p = [[self alloc] init];
5473  // Add default values
5474  return p;
5475}
5476@end
5477
5478@implementation KBRCheckDeviceNameFormatRequestParams
5479
5480- (instancetype)initWithParams:(NSArray *)params {
5481  if ((self = [super initWithParams:params])) {
5482    self.sessionID = [params[0][@"sessionID"] integerValue];
5483    self.name = params[0][@"name"];
5484  }
5485  return self;
5486}
5487
5488+ (instancetype)params {
5489  KBRCheckDeviceNameFormatRequestParams *p = [[self alloc] init];
5490  // Add default values
5491  return p;
5492}
5493@end
5494
5495@implementation KBRCheckDeviceNameForUserRequestParams
5496
5497- (instancetype)initWithParams:(NSArray *)params {
5498  if ((self = [super initWithParams:params])) {
5499    self.sessionID = [params[0][@"sessionID"] integerValue];
5500    self.username = params[0][@"username"];
5501    self.devicename = params[0][@"devicename"];
5502  }
5503  return self;
5504}
5505
5506+ (instancetype)params {
5507  KBRCheckDeviceNameForUserRequestParams *p = [[self alloc] init];
5508  // Add default values
5509  return p;
5510}
5511@end
5512
5513@implementation KBRFavoriteAddRequestParams
5514
5515- (instancetype)initWithParams:(NSArray *)params {
5516  if ((self = [super initWithParams:params])) {
5517    self.sessionID = [params[0][@"sessionID"] integerValue];
5518    self.folder = [MTLJSONAdapter modelOfClass:KBRFolder.class fromJSONDictionary:params[0][@"folder"] error:nil];
5519  }
5520  return self;
5521}
5522
5523+ (instancetype)params {
5524  KBRFavoriteAddRequestParams *p = [[self alloc] init];
5525  // Add default values
5526  return p;
5527}
5528@end
5529
5530@implementation KBRFavoriteIgnoreRequestParams
5531
5532- (instancetype)initWithParams:(NSArray *)params {
5533  if ((self = [super initWithParams:params])) {
5534    self.sessionID = [params[0][@"sessionID"] integerValue];
5535    self.folder = [MTLJSONAdapter modelOfClass:KBRFolder.class fromJSONDictionary:params[0][@"folder"] error:nil];
5536  }
5537  return self;
5538}
5539
5540+ (instancetype)params {
5541  KBRFavoriteIgnoreRequestParams *p = [[self alloc] init];
5542  // Add default values
5543  return p;
5544}
5545@end
5546
5547@implementation KBRGetFavoritesRequestParams
5548
5549- (instancetype)initWithParams:(NSArray *)params {
5550  if ((self = [super initWithParams:params])) {
5551    self.sessionID = [params[0][@"sessionID"] integerValue];
5552  }
5553  return self;
5554}
5555
5556+ (instancetype)params {
5557  KBRGetFavoritesRequestParams *p = [[self alloc] init];
5558  // Add default values
5559  return p;
5560}
5561@end
5562
5563@implementation KBRListRequestParams
5564
5565- (instancetype)initWithParams:(NSArray *)params {
5566  if ((self = [super initWithParams:params])) {
5567    self.sessionID = [params[0][@"sessionID"] integerValue];
5568    self.path = params[0][@"path"];
5569  }
5570  return self;
5571}
5572
5573+ (instancetype)params {
5574  KBRListRequestParams *p = [[self alloc] init];
5575  // Add default values
5576  return p;
5577}
5578@end
5579
5580@implementation KBRWantToAddGPGKeyRequestParams
5581
5582- (instancetype)initWithParams:(NSArray *)params {
5583  if ((self = [super initWithParams:params])) {
5584    self.sessionID = [params[0][@"sessionID"] integerValue];
5585  }
5586  return self;
5587}
5588
5589+ (instancetype)params {
5590  KBRWantToAddGPGKeyRequestParams *p = [[self alloc] init];
5591  // Add default values
5592  return p;
5593}
5594@end
5595
5596@implementation KBRConfirmDuplicateKeyChosenRequestParams
5597
5598- (instancetype)initWithParams:(NSArray *)params {
5599  if ((self = [super initWithParams:params])) {
5600    self.sessionID = [params[0][@"sessionID"] integerValue];
5601  }
5602  return self;
5603}
5604
5605+ (instancetype)params {
5606  KBRConfirmDuplicateKeyChosenRequestParams *p = [[self alloc] init];
5607  // Add default values
5608  return p;
5609}
5610@end
5611
5612@implementation KBRSelectKeyAndPushOptionRequestParams
5613
5614- (instancetype)initWithParams:(NSArray *)params {
5615  if ((self = [super initWithParams:params])) {
5616    self.sessionID = [params[0][@"sessionID"] integerValue];
5617    self.keys = [MTLJSONAdapter modelsOfClass:KBRGPGKey.class fromJSONArray:params[0][@"keys"] error:nil];
5618  }
5619  return self;
5620}
5621
5622+ (instancetype)params {
5623  KBRSelectKeyAndPushOptionRequestParams *p = [[self alloc] init];
5624  // Add default values
5625  return p;
5626}
5627@end
5628
5629@implementation KBRSelectKeyRequestParams
5630
5631- (instancetype)initWithParams:(NSArray *)params {
5632  if ((self = [super initWithParams:params])) {
5633    self.sessionID = [params[0][@"sessionID"] integerValue];
5634    self.keys = [MTLJSONAdapter modelsOfClass:KBRGPGKey.class fromJSONArray:params[0][@"keys"] error:nil];
5635  }
5636  return self;
5637}
5638
5639+ (instancetype)params {
5640  KBRSelectKeyRequestParams *p = [[self alloc] init];
5641  // Add default values
5642  return p;
5643}
5644@end
5645
5646@implementation KBRSignRequestParams
5647
5648- (instancetype)initWithParams:(NSArray *)params {
5649  if ((self = [super initWithParams:params])) {
5650    self.msg = params[0][@"msg"];
5651    self.fingerprint = params[0][@"fingerprint"];
5652  }
5653  return self;
5654}
5655
5656+ (instancetype)params {
5657  KBRSignRequestParams *p = [[self alloc] init];
5658  // Add default values
5659  return p;
5660}
5661@end
5662
5663@implementation KBRResolveRequestParams
5664
5665- (instancetype)initWithParams:(NSArray *)params {
5666  if ((self = [super initWithParams:params])) {
5667    self.assertion = params[0][@"assertion"];
5668  }
5669  return self;
5670}
5671
5672+ (instancetype)params {
5673  KBRResolveRequestParams *p = [[self alloc] init];
5674  // Add default values
5675  return p;
5676}
5677@end
5678
5679@implementation KBRResolve2RequestParams
5680
5681- (instancetype)initWithParams:(NSArray *)params {
5682  if ((self = [super initWithParams:params])) {
5683    self.assertion = params[0][@"assertion"];
5684  }
5685  return self;
5686}
5687
5688+ (instancetype)params {
5689  KBRResolve2RequestParams *p = [[self alloc] init];
5690  // Add default values
5691  return p;
5692}
5693@end
5694
5695@implementation KBRIdentifyRequestParams
5696
5697- (instancetype)initWithParams:(NSArray *)params {
5698  if ((self = [super initWithParams:params])) {
5699    self.sessionID = [params[0][@"sessionID"] integerValue];
5700    self.userAssertion = params[0][@"userAssertion"];
5701    self.forceRemoteCheck = [params[0][@"forceRemoteCheck"] boolValue];
5702    self.useDelegateUI = [params[0][@"useDelegateUI"] boolValue];
5703    self.reason = [MTLJSONAdapter modelOfClass:KBRIdentifyReason.class fromJSONDictionary:params[0][@"reason"] error:nil];
5704    self.source = [params[0][@"source"] integerValue];
5705  }
5706  return self;
5707}
5708
5709+ (instancetype)params {
5710  KBRIdentifyRequestParams *p = [[self alloc] init];
5711  // Add default values
5712  p.forceRemoteCheck = false;
5713  p.useDelegateUI = false;
5714  return p;
5715}
5716@end
5717
5718@implementation KBRIdentify2RequestParams
5719
5720- (instancetype)initWithParams:(NSArray *)params {
5721  if ((self = [super initWithParams:params])) {
5722    self.sessionID = [params[0][@"sessionID"] integerValue];
5723    self.uid = params[0][@"uid"];
5724    self.userAssertion = params[0][@"userAssertion"];
5725    self.reason = [MTLJSONAdapter modelOfClass:KBRIdentifyReason.class fromJSONDictionary:params[0][@"reason"] error:nil];
5726    self.useDelegateUI = [params[0][@"useDelegateUI"] boolValue];
5727    self.alwaysBlock = [params[0][@"alwaysBlock"] boolValue];
5728    self.noErrorOnTrackFailure = [params[0][@"noErrorOnTrackFailure"] boolValue];
5729    self.forceRemoteCheck = [params[0][@"forceRemoteCheck"] boolValue];
5730    self.needProofSet = [params[0][@"needProofSet"] boolValue];
5731    self.allowEmptySelfID = [params[0][@"allowEmptySelfID"] boolValue];
5732    self.noSkipSelf = [params[0][@"noSkipSelf"] boolValue];
5733    self.canSuppressUI = [params[0][@"canSuppressUI"] boolValue];
5734    self.chatGUIMode = [params[0][@"chatGUIMode"] boolValue];
5735    self.forceDisplay = [params[0][@"forceDisplay"] boolValue];
5736  }
5737  return self;
5738}
5739
5740+ (instancetype)params {
5741  KBRIdentify2RequestParams *p = [[self alloc] init];
5742  // Add default values
5743  p.useDelegateUI = false;
5744  p.alwaysBlock = false;
5745  p.noErrorOnTrackFailure = false;
5746  p.forceRemoteCheck = false;
5747  p.needProofSet = false;
5748  p.allowEmptySelfID = false;
5749  p.noSkipSelf = true;
5750  p.canSuppressUI = false;
5751  p.chatGUIMode = false;
5752  p.forceDisplay = false;
5753  return p;
5754}
5755@end
5756
5757@implementation KBRFSEventRequestParams
5758
5759- (instancetype)initWithParams:(NSArray *)params {
5760  if ((self = [super initWithParams:params])) {
5761    self.event = [MTLJSONAdapter modelOfClass:KBRFSNotification.class fromJSONDictionary:params[0][@"event"] error:nil];
5762  }
5763  return self;
5764}
5765
5766+ (instancetype)params {
5767  KBRFSEventRequestParams *p = [[self alloc] init];
5768  // Add default values
5769  return p;
5770}
5771@end
5772
5773@implementation KBRFSEditListRequestParams
5774
5775- (instancetype)initWithParams:(NSArray *)params {
5776  if ((self = [super initWithParams:params])) {
5777    self.edits = [MTLJSONAdapter modelsOfClass:KBRFSNotification.class fromJSONArray:params[0][@"edits"] error:nil];
5778    self.requestID = [params[0][@"requestID"] integerValue];
5779  }
5780  return self;
5781}
5782
5783+ (instancetype)params {
5784  KBRFSEditListRequestParams *p = [[self alloc] init];
5785  // Add default values
5786  return p;
5787}
5788@end
5789
5790@implementation KBRFSSyncStatusRequestParams
5791
5792- (instancetype)initWithParams:(NSArray *)params {
5793  if ((self = [super initWithParams:params])) {
5794    self.status = [MTLJSONAdapter modelOfClass:KBRFSSyncStatus.class fromJSONDictionary:params[0][@"status"] error:nil];
5795    self.requestID = [params[0][@"requestID"] integerValue];
5796  }
5797  return self;
5798}
5799
5800+ (instancetype)params {
5801  KBRFSSyncStatusRequestParams *p = [[self alloc] init];
5802  // Add default values
5803  return p;
5804}
5805@end
5806
5807@implementation KBRFSSyncEventRequestParams
5808
5809- (instancetype)initWithParams:(NSArray *)params {
5810  if ((self = [super initWithParams:params])) {
5811    self.event = [MTLJSONAdapter modelOfClass:KBRFSPathSyncStatus.class fromJSONDictionary:params[0][@"event"] error:nil];
5812  }
5813  return self;
5814}
5815
5816+ (instancetype)params {
5817  KBRFSSyncEventRequestParams *p = [[self alloc] init];
5818  // Add default values
5819  return p;
5820}
5821@end
5822
5823@implementation KBRSetCurrentMountDirRequestParams
5824
5825- (instancetype)initWithParams:(NSArray *)params {
5826  if ((self = [super initWithParams:params])) {
5827    self.dir = params[0][@"dir"];
5828  }
5829  return self;
5830}
5831
5832+ (instancetype)params {
5833  KBRSetCurrentMountDirRequestParams *p = [[self alloc] init];
5834  // Add default values
5835  return p;
5836}
5837@end
5838
5839@implementation KBRHelloRequestParams
5840
5841- (instancetype)initWithParams:(NSArray *)params {
5842  if ((self = [super initWithParams:params])) {
5843    self.uid = params[0][@"uid"];
5844    self.token = params[0][@"token"];
5845    self.csrf = params[0][@"csrf"];
5846    self.pps = [MTLJSONAdapter modelOfClass:KBRPassphraseStream.class fromJSONDictionary:params[0][@"pps"] error:nil];
5847    self.sigBody = params[0][@"sigBody"];
5848  }
5849  return self;
5850}
5851
5852+ (instancetype)params {
5853  KBRHelloRequestParams *p = [[self alloc] init];
5854  // Add default values
5855  return p;
5856}
5857@end
5858
5859@implementation KBRDidCounterSignRequestParams
5860
5861- (instancetype)initWithParams:(NSArray *)params {
5862  if ((self = [super initWithParams:params])) {
5863    self.sig = params[0][@"sig"];
5864  }
5865  return self;
5866}
5867
5868+ (instancetype)params {
5869  KBRDidCounterSignRequestParams *p = [[self alloc] init];
5870  // Add default values
5871  return p;
5872}
5873@end
5874
5875@implementation KBRHello2RequestParams
5876
5877- (instancetype)initWithParams:(NSArray *)params {
5878  if ((self = [super initWithParams:params])) {
5879    self.uid = params[0][@"uid"];
5880    self.token = params[0][@"token"];
5881    self.csrf = params[0][@"csrf"];
5882    self.sigBody = params[0][@"sigBody"];
5883  }
5884  return self;
5885}
5886
5887+ (instancetype)params {
5888  KBRHello2RequestParams *p = [[self alloc] init];
5889  // Add default values
5890  return p;
5891}
5892@end
5893
5894@implementation KBRDidCounterSign2RequestParams
5895
5896- (instancetype)initWithParams:(NSArray *)params {
5897  if ((self = [super initWithParams:params])) {
5898    self.sig = params[0][@"sig"];
5899    self.ppsEncrypted = params[0][@"ppsEncrypted"];
5900  }
5901  return self;
5902}
5903
5904+ (instancetype)params {
5905  KBRDidCounterSign2RequestParams *p = [[self alloc] init];
5906  // Add default values
5907  return p;
5908}
5909@end
5910
5911@implementation KBRRegisterLoggerRequestParams
5912
5913- (instancetype)initWithParams:(NSArray *)params {
5914  if ((self = [super initWithParams:params])) {
5915    self.sessionID = [params[0][@"sessionID"] integerValue];
5916    self.name = params[0][@"name"];
5917    self.level = [params[0][@"level"] integerValue];
5918  }
5919  return self;
5920}
5921
5922+ (instancetype)params {
5923  KBRRegisterLoggerRequestParams *p = [[self alloc] init];
5924  // Add default values
5925  return p;
5926}
5927@end
5928
5929@implementation KBRLogRequestParams
5930
5931- (instancetype)initWithParams:(NSArray *)params {
5932  if ((self = [super initWithParams:params])) {
5933    self.sessionID = [params[0][@"sessionID"] integerValue];
5934    self.level = [params[0][@"level"] integerValue];
5935    self.text = [MTLJSONAdapter modelOfClass:KBRText.class fromJSONDictionary:params[0][@"text"] error:nil];
5936  }
5937  return self;
5938}
5939
5940+ (instancetype)params {
5941  KBRLogRequestParams *p = [[self alloc] init];
5942  // Add default values
5943  return p;
5944}
5945@end
5946
5947@implementation KBRGetConfiguredAccountsRequestParams
5948
5949- (instancetype)initWithParams:(NSArray *)params {
5950  if ((self = [super initWithParams:params])) {
5951    self.sessionID = [params[0][@"sessionID"] integerValue];
5952  }
5953  return self;
5954}
5955
5956+ (instancetype)params {
5957  KBRGetConfiguredAccountsRequestParams *p = [[self alloc] init];
5958  // Add default values
5959  return p;
5960}
5961@end
5962
5963@implementation KBRLoginRequestParams
5964
5965- (instancetype)initWithParams:(NSArray *)params {
5966  if ((self = [super initWithParams:params])) {
5967    self.sessionID = [params[0][@"sessionID"] integerValue];
5968    self.deviceType = params[0][@"deviceType"];
5969    self.usernameOrEmail = params[0][@"usernameOrEmail"];
5970    self.clientType = [params[0][@"clientType"] integerValue];
5971  }
5972  return self;
5973}
5974
5975+ (instancetype)params {
5976  KBRLoginRequestParams *p = [[self alloc] init];
5977  // Add default values
5978  return p;
5979}
5980@end
5981
5982@implementation KBRClearStoredSecretRequestParams
5983
5984- (instancetype)initWithParams:(NSArray *)params {
5985  if ((self = [super initWithParams:params])) {
5986    self.sessionID = [params[0][@"sessionID"] integerValue];
5987    self.username = params[0][@"username"];
5988  }
5989  return self;
5990}
5991
5992+ (instancetype)params {
5993  KBRClearStoredSecretRequestParams *p = [[self alloc] init];
5994  // Add default values
5995  return p;
5996}
5997@end
5998
5999@implementation KBRLogoutRequestParams
6000
6001- (instancetype)initWithParams:(NSArray *)params {
6002  if ((self = [super initWithParams:params])) {
6003    self.sessionID = [params[0][@"sessionID"] integerValue];
6004  }
6005  return self;
6006}
6007
6008+ (instancetype)params {
6009  KBRLogoutRequestParams *p = [[self alloc] init];
6010  // Add default values
6011  return p;
6012}
6013@end
6014
6015@implementation KBRDeprovisionRequestParams
6016
6017- (instancetype)initWithParams:(NSArray *)params {
6018  if ((self = [super initWithParams:params])) {
6019    self.sessionID = [params[0][@"sessionID"] integerValue];
6020    self.username = params[0][@"username"];
6021    self.doRevoke = [params[0][@"doRevoke"] boolValue];
6022  }
6023  return self;
6024}
6025
6026+ (instancetype)params {
6027  KBRDeprovisionRequestParams *p = [[self alloc] init];
6028  // Add default values
6029  return p;
6030}
6031@end
6032
6033@implementation KBRRecoverAccountFromEmailAddressRequestParams
6034
6035- (instancetype)initWithParams:(NSArray *)params {
6036  if ((self = [super initWithParams:params])) {
6037    self.email = params[0][@"email"];
6038  }
6039  return self;
6040}
6041
6042+ (instancetype)params {
6043  KBRRecoverAccountFromEmailAddressRequestParams *p = [[self alloc] init];
6044  // Add default values
6045  return p;
6046}
6047@end
6048
6049@implementation KBRPaperKeyRequestParams
6050
6051- (instancetype)initWithParams:(NSArray *)params {
6052  if ((self = [super initWithParams:params])) {
6053    self.sessionID = [params[0][@"sessionID"] integerValue];
6054  }
6055  return self;
6056}
6057
6058+ (instancetype)params {
6059  KBRPaperKeyRequestParams *p = [[self alloc] init];
6060  // Add default values
6061  return p;
6062}
6063@end
6064
6065@implementation KBRPaperKeySubmitRequestParams
6066
6067- (instancetype)initWithParams:(NSArray *)params {
6068  if ((self = [super initWithParams:params])) {
6069    self.sessionID = [params[0][@"sessionID"] integerValue];
6070    self.paperPhrase = params[0][@"paperPhrase"];
6071  }
6072  return self;
6073}
6074
6075+ (instancetype)params {
6076  KBRPaperKeySubmitRequestParams *p = [[self alloc] init];
6077  // Add default values
6078  return p;
6079}
6080@end
6081
6082@implementation KBRUnlockRequestParams
6083
6084- (instancetype)initWithParams:(NSArray *)params {
6085  if ((self = [super initWithParams:params])) {
6086    self.sessionID = [params[0][@"sessionID"] integerValue];
6087  }
6088  return self;
6089}
6090
6091+ (instancetype)params {
6092  KBRUnlockRequestParams *p = [[self alloc] init];
6093  // Add default values
6094  return p;
6095}
6096@end
6097
6098@implementation KBRUnlockWithPassphraseRequestParams
6099
6100- (instancetype)initWithParams:(NSArray *)params {
6101  if ((self = [super initWithParams:params])) {
6102    self.sessionID = [params[0][@"sessionID"] integerValue];
6103    self.passphrase = params[0][@"passphrase"];
6104  }
6105  return self;
6106}
6107
6108+ (instancetype)params {
6109  KBRUnlockWithPassphraseRequestParams *p = [[self alloc] init];
6110  // Add default values
6111  return p;
6112}
6113@end
6114
6115@implementation KBRPgpProvisionRequestParams
6116
6117- (instancetype)initWithParams:(NSArray *)params {
6118  if ((self = [super initWithParams:params])) {
6119    self.sessionID = [params[0][@"sessionID"] integerValue];
6120    self.username = params[0][@"username"];
6121    self.passphrase = params[0][@"passphrase"];
6122    self.deviceName = params[0][@"deviceName"];
6123  }
6124  return self;
6125}
6126
6127+ (instancetype)params {
6128  KBRPgpProvisionRequestParams *p = [[self alloc] init];
6129  // Add default values
6130  return p;
6131}
6132@end
6133
6134@implementation KBRAccountDeleteRequestParams
6135
6136- (instancetype)initWithParams:(NSArray *)params {
6137  if ((self = [super initWithParams:params])) {
6138    self.sessionID = [params[0][@"sessionID"] integerValue];
6139  }
6140  return self;
6141}
6142
6143+ (instancetype)params {
6144  KBRAccountDeleteRequestParams *p = [[self alloc] init];
6145  // Add default values
6146  return p;
6147}
6148@end
6149
6150@implementation KBRGetEmailOrUsernameRequestParams
6151
6152- (instancetype)initWithParams:(NSArray *)params {
6153  if ((self = [super initWithParams:params])) {
6154    self.sessionID = [params[0][@"sessionID"] integerValue];
6155  }
6156  return self;
6157}
6158
6159+ (instancetype)params {
6160  KBRGetEmailOrUsernameRequestParams *p = [[self alloc] init];
6161  // Add default values
6162  return p;
6163}
6164@end
6165
6166@implementation KBRPromptRevokePaperKeysRequestParams
6167
6168- (instancetype)initWithParams:(NSArray *)params {
6169  if ((self = [super initWithParams:params])) {
6170    self.sessionID = [params[0][@"sessionID"] integerValue];
6171    self.device = [MTLJSONAdapter modelOfClass:KBRDevice.class fromJSONDictionary:params[0][@"device"] error:nil];
6172    self.index = [params[0][@"index"] integerValue];
6173  }
6174  return self;
6175}
6176
6177+ (instancetype)params {
6178  KBRPromptRevokePaperKeysRequestParams *p = [[self alloc] init];
6179  // Add default values
6180  return p;
6181}
6182@end
6183
6184@implementation KBRDisplayPaperKeyPhraseRequestParams
6185
6186- (instancetype)initWithParams:(NSArray *)params {
6187  if ((self = [super initWithParams:params])) {
6188    self.sessionID = [params[0][@"sessionID"] integerValue];
6189    self.phrase = params[0][@"phrase"];
6190  }
6191  return self;
6192}
6193
6194+ (instancetype)params {
6195  KBRDisplayPaperKeyPhraseRequestParams *p = [[self alloc] init];
6196  // Add default values
6197  return p;
6198}
6199@end
6200
6201@implementation KBRDisplayPrimaryPaperKeyRequestParams
6202
6203- (instancetype)initWithParams:(NSArray *)params {
6204  if ((self = [super initWithParams:params])) {
6205    self.sessionID = [params[0][@"sessionID"] integerValue];
6206    self.phrase = params[0][@"phrase"];
6207  }
6208  return self;
6209}
6210
6211+ (instancetype)params {
6212  KBRDisplayPrimaryPaperKeyRequestParams *p = [[self alloc] init];
6213  // Add default values
6214  return p;
6215}
6216@end
6217
6218@implementation KBRAuthenticateRequestParams
6219
6220- (instancetype)initWithParams:(NSArray *)params {
6221  if ((self = [super initWithParams:params])) {
6222    self.signature = params[0][@"signature"];
6223  }
6224  return self;
6225}
6226
6227+ (instancetype)params {
6228  KBRAuthenticateRequestParams *p = [[self alloc] init];
6229  // Add default values
6230  return p;
6231}
6232@end
6233
6234@implementation KBRPutMetadataRequestParams
6235
6236- (instancetype)initWithParams:(NSArray *)params {
6237  if ((self = [super initWithParams:params])) {
6238    self.mdBlock = [MTLJSONAdapter modelOfClass:KBRMDBlock.class fromJSONDictionary:params[0][@"mdBlock"] error:nil];
6239    self.readerKeyBundle = [MTLJSONAdapter modelOfClass:KBRKeyBundle.class fromJSONDictionary:params[0][@"readerKeyBundle"] error:nil];
6240    self.writerKeyBundle = [MTLJSONAdapter modelOfClass:KBRKeyBundle.class fromJSONDictionary:params[0][@"writerKeyBundle"] error:nil];
6241    self.logTags = KBRValidateDictionary(params[0][@"logTags"], NSString.class);
6242  }
6243  return self;
6244}
6245
6246+ (instancetype)params {
6247  KBRPutMetadataRequestParams *p = [[self alloc] init];
6248  // Add default values
6249  return p;
6250}
6251@end
6252
6253@implementation KBRGetMetadataRequestParams
6254
6255- (instancetype)initWithParams:(NSArray *)params {
6256  if ((self = [super initWithParams:params])) {
6257    self.folderID = params[0][@"folderID"];
6258    self.folderHandle = params[0][@"folderHandle"];
6259    self.branchID = params[0][@"branchID"];
6260    self.unmerged = [params[0][@"unmerged"] boolValue];
6261    self.startRevision = [params[0][@"startRevision"] longLongValue];
6262    self.stopRevision = [params[0][@"stopRevision"] longLongValue];
6263    self.logTags = KBRValidateDictionary(params[0][@"logTags"], NSString.class);
6264  }
6265  return self;
6266}
6267
6268+ (instancetype)params {
6269  KBRGetMetadataRequestParams *p = [[self alloc] init];
6270  // Add default values
6271  return p;
6272}
6273@end
6274
6275@implementation KBRRegisterForUpdatesRequestParams
6276
6277- (instancetype)initWithParams:(NSArray *)params {
6278  if ((self = [super initWithParams:params])) {
6279    self.folderID = params[0][@"folderID"];
6280    self.currRevision = [params[0][@"currRevision"] longLongValue];
6281    self.logTags = KBRValidateDictionary(params[0][@"logTags"], NSString.class);
6282  }
6283  return self;
6284}
6285
6286+ (instancetype)params {
6287  KBRRegisterForUpdatesRequestParams *p = [[self alloc] init];
6288  // Add default values
6289  return p;
6290}
6291@end
6292
6293@implementation KBRPruneBranchRequestParams
6294
6295- (instancetype)initWithParams:(NSArray *)params {
6296  if ((self = [super initWithParams:params])) {
6297    self.folderID = params[0][@"folderID"];
6298    self.branchID = params[0][@"branchID"];
6299    self.logTags = KBRValidateDictionary(params[0][@"logTags"], NSString.class);
6300  }
6301  return self;
6302}
6303
6304+ (instancetype)params {
6305  KBRPruneBranchRequestParams *p = [[self alloc] init];
6306  // Add default values
6307  return p;
6308}
6309@end
6310
6311@implementation KBRPutKeysRequestParams
6312
6313- (instancetype)initWithParams:(NSArray *)params {
6314  if ((self = [super initWithParams:params])) {
6315    self.keyHalves = [MTLJSONAdapter modelsOfClass:KBRKeyHalf.class fromJSONArray:params[0][@"keyHalves"] error:nil];
6316    self.logTags = KBRValidateDictionary(params[0][@"logTags"], NSString.class);
6317  }
6318  return self;
6319}
6320
6321+ (instancetype)params {
6322  KBRPutKeysRequestParams *p = [[self alloc] init];
6323  // Add default values
6324  return p;
6325}
6326@end
6327
6328@implementation KBRGetKeyRequestParams
6329
6330- (instancetype)initWithParams:(NSArray *)params {
6331  if ((self = [super initWithParams:params])) {
6332    self.keyHalfID = params[0][@"keyHalfID"];
6333    self.deviceKID = params[0][@"deviceKID"];
6334    self.logTags = KBRValidateDictionary(params[0][@"logTags"], NSString.class);
6335  }
6336  return self;
6337}
6338
6339+ (instancetype)params {
6340  KBRGetKeyRequestParams *p = [[self alloc] init];
6341  // Add default values
6342  return p;
6343}
6344@end
6345
6346@implementation KBRDeleteKeyRequestParams
6347
6348- (instancetype)initWithParams:(NSArray *)params {
6349  if ((self = [super initWithParams:params])) {
6350    self.uid = params[0][@"uid"];
6351    self.deviceKID = params[0][@"deviceKID"];
6352    self.keyHalfID = params[0][@"keyHalfID"];
6353    self.logTags = KBRValidateDictionary(params[0][@"logTags"], NSString.class);
6354  }
6355  return self;
6356}
6357
6358+ (instancetype)params {
6359  KBRDeleteKeyRequestParams *p = [[self alloc] init];
6360  // Add default values
6361  return p;
6362}
6363@end
6364
6365@implementation KBRTruncateLockRequestParams
6366
6367- (instancetype)initWithParams:(NSArray *)params {
6368  if ((self = [super initWithParams:params])) {
6369    self.folderID = params[0][@"folderID"];
6370  }
6371  return self;
6372}
6373
6374+ (instancetype)params {
6375  KBRTruncateLockRequestParams *p = [[self alloc] init];
6376  // Add default values
6377  return p;
6378}
6379@end
6380
6381@implementation KBRTruncateUnlockRequestParams
6382
6383- (instancetype)initWithParams:(NSArray *)params {
6384  if ((self = [super initWithParams:params])) {
6385    self.folderID = params[0][@"folderID"];
6386  }
6387  return self;
6388}
6389
6390+ (instancetype)params {
6391  KBRTruncateUnlockRequestParams *p = [[self alloc] init];
6392  // Add default values
6393  return p;
6394}
6395@end
6396
6397@implementation KBRGetFolderHandleRequestParams
6398
6399- (instancetype)initWithParams:(NSArray *)params {
6400  if ((self = [super initWithParams:params])) {
6401    self.folderID = params[0][@"folderID"];
6402    self.signature = params[0][@"signature"];
6403    self.challenge = params[0][@"challenge"];
6404  }
6405  return self;
6406}
6407
6408+ (instancetype)params {
6409  KBRGetFolderHandleRequestParams *p = [[self alloc] init];
6410  // Add default values
6411  return p;
6412}
6413@end
6414
6415@implementation KBRGetFoldersForRekeyRequestParams
6416
6417- (instancetype)initWithParams:(NSArray *)params {
6418  if ((self = [super initWithParams:params])) {
6419    self.deviceKID = params[0][@"deviceKID"];
6420  }
6421  return self;
6422}
6423
6424+ (instancetype)params {
6425  KBRGetFoldersForRekeyRequestParams *p = [[self alloc] init];
6426  // Add default values
6427  return p;
6428}
6429@end
6430
6431@implementation KBRGetLatestFolderHandleRequestParams
6432
6433- (instancetype)initWithParams:(NSArray *)params {
6434  if ((self = [super initWithParams:params])) {
6435    self.folderID = params[0][@"folderID"];
6436  }
6437  return self;
6438}
6439
6440+ (instancetype)params {
6441  KBRGetLatestFolderHandleRequestParams *p = [[self alloc] init];
6442  // Add default values
6443  return p;
6444}
6445@end
6446
6447@implementation KBRGetKeyBundlesRequestParams
6448
6449- (instancetype)initWithParams:(NSArray *)params {
6450  if ((self = [super initWithParams:params])) {
6451    self.folderID = params[0][@"folderID"];
6452    self.writerBundleID = params[0][@"writerBundleID"];
6453    self.readerBundleID = params[0][@"readerBundleID"];
6454  }
6455  return self;
6456}
6457
6458+ (instancetype)params {
6459  KBRGetKeyBundlesRequestParams *p = [[self alloc] init];
6460  // Add default values
6461  return p;
6462}
6463@end
6464
6465@implementation KBRGetMerkleRootRequestParams
6466
6467- (instancetype)initWithParams:(NSArray *)params {
6468  if ((self = [super initWithParams:params])) {
6469    self.treeID = [params[0][@"treeID"] integerValue];
6470    self.seqNo = [params[0][@"seqNo"] longLongValue];
6471  }
6472  return self;
6473}
6474
6475+ (instancetype)params {
6476  KBRGetMerkleRootRequestParams *p = [[self alloc] init];
6477  // Add default values
6478  return p;
6479}
6480@end
6481
6482@implementation KBRGetMerkleRootLatestRequestParams
6483
6484- (instancetype)initWithParams:(NSArray *)params {
6485  if ((self = [super initWithParams:params])) {
6486    self.treeID = [params[0][@"treeID"] integerValue];
6487  }
6488  return self;
6489}
6490
6491+ (instancetype)params {
6492  KBRGetMerkleRootLatestRequestParams *p = [[self alloc] init];
6493  // Add default values
6494  return p;
6495}
6496@end
6497
6498@implementation KBRGetMerkleRootSinceRequestParams
6499
6500- (instancetype)initWithParams:(NSArray *)params {
6501  if ((self = [super initWithParams:params])) {
6502    self.treeID = [params[0][@"treeID"] integerValue];
6503    self.when = [params[0][@"when"] longLongValue];
6504  }
6505  return self;
6506}
6507
6508+ (instancetype)params {
6509  KBRGetMerkleRootSinceRequestParams *p = [[self alloc] init];
6510  // Add default values
6511  return p;
6512}
6513@end
6514
6515@implementation KBRGetMerkleNodeRequestParams
6516
6517- (instancetype)initWithParams:(NSArray *)params {
6518  if ((self = [super initWithParams:params])) {
6519    self.hash = params[0][@"hash"];
6520  }
6521  return self;
6522}
6523
6524+ (instancetype)params {
6525  KBRGetMerkleNodeRequestParams *p = [[self alloc] init];
6526  // Add default values
6527  return p;
6528}
6529@end
6530
6531@implementation KBRMetadataUpdateRequestParams
6532
6533- (instancetype)initWithParams:(NSArray *)params {
6534  if ((self = [super initWithParams:params])) {
6535    self.folderID = params[0][@"folderID"];
6536    self.revision = [params[0][@"revision"] longLongValue];
6537  }
6538  return self;
6539}
6540
6541+ (instancetype)params {
6542  KBRMetadataUpdateRequestParams *p = [[self alloc] init];
6543  // Add default values
6544  return p;
6545}
6546@end
6547
6548@implementation KBRFolderNeedsRekeyRequestParams
6549
6550- (instancetype)initWithParams:(NSArray *)params {
6551  if ((self = [super initWithParams:params])) {
6552    self.folderID = params[0][@"folderID"];
6553    self.revision = [params[0][@"revision"] longLongValue];
6554  }
6555  return self;
6556}
6557
6558+ (instancetype)params {
6559  KBRFolderNeedsRekeyRequestParams *p = [[self alloc] init];
6560  // Add default values
6561  return p;
6562}
6563@end
6564
6565@implementation KBRBadgeStateRequestParams
6566
6567- (instancetype)initWithParams:(NSArray *)params {
6568  if ((self = [super initWithParams:params])) {
6569    self.badgeState = [MTLJSONAdapter modelOfClass:KBRBadgeState.class fromJSONDictionary:params[0][@"badgeState"] error:nil];
6570  }
6571  return self;
6572}
6573
6574+ (instancetype)params {
6575  KBRBadgeStateRequestParams *p = [[self alloc] init];
6576  // Add default values
6577  return p;
6578}
6579@end
6580
6581@implementation KBRSetNotificationsRequestParams
6582
6583- (instancetype)initWithParams:(NSArray *)params {
6584  if ((self = [super initWithParams:params])) {
6585    self.channels = [MTLJSONAdapter modelOfClass:KBRNotificationChannels.class fromJSONDictionary:params[0][@"channels"] error:nil];
6586  }
6587  return self;
6588}
6589
6590+ (instancetype)params {
6591  KBRSetNotificationsRequestParams *p = [[self alloc] init];
6592  // Add default values
6593  return p;
6594}
6595@end
6596
6597@implementation KBRFavoritesChangedRequestParams
6598
6599- (instancetype)initWithParams:(NSArray *)params {
6600  if ((self = [super initWithParams:params])) {
6601    self.uid = params[0][@"uid"];
6602  }
6603  return self;
6604}
6605
6606+ (instancetype)params {
6607  KBRFavoritesChangedRequestParams *p = [[self alloc] init];
6608  // Add default values
6609  return p;
6610}
6611@end
6612
6613@implementation KBRFSActivityRequestParams
6614
6615- (instancetype)initWithParams:(NSArray *)params {
6616  if ((self = [super initWithParams:params])) {
6617    self.notification = [MTLJSONAdapter modelOfClass:KBRFSNotification.class fromJSONDictionary:params[0][@"notification"] error:nil];
6618  }
6619  return self;
6620}
6621
6622+ (instancetype)params {
6623  KBRFSActivityRequestParams *p = [[self alloc] init];
6624  // Add default values
6625  return p;
6626}
6627@end
6628
6629@implementation KBRFSSyncActivityRequestParams
6630
6631- (instancetype)initWithParams:(NSArray *)params {
6632  if ((self = [super initWithParams:params])) {
6633    self.status = [MTLJSONAdapter modelOfClass:KBRFSPathSyncStatus.class fromJSONDictionary:params[0][@"status"] error:nil];
6634  }
6635  return self;
6636}
6637
6638+ (instancetype)params {
6639  KBRFSSyncActivityRequestParams *p = [[self alloc] init];
6640  // Add default values
6641  return p;
6642}
6643@end
6644
6645@implementation KBRFSEditListResponseRequestParams
6646
6647- (instancetype)initWithParams:(NSArray *)params {
6648  if ((self = [super initWithParams:params])) {
6649    self.edits = [MTLJSONAdapter modelsOfClass:KBRFSNotification.class fromJSONArray:params[0][@"edits"] error:nil];
6650    self.requestID = [params[0][@"requestID"] integerValue];
6651  }
6652  return self;
6653}
6654
6655+ (instancetype)params {
6656  KBRFSEditListResponseRequestParams *p = [[self alloc] init];
6657  // Add default values
6658  return p;
6659}
6660@end
6661
6662@implementation KBRFSSyncStatusResponseRequestParams
6663
6664- (instancetype)initWithParams:(NSArray *)params {
6665  if ((self = [super initWithParams:params])) {
6666    self.status = [MTLJSONAdapter modelOfClass:KBRFSSyncStatus.class fromJSONDictionary:params[0][@"status"] error:nil];
6667    self.requestID = [params[0][@"requestID"] integerValue];
6668  }
6669  return self;
6670}
6671
6672+ (instancetype)params {
6673  KBRFSSyncStatusResponseRequestParams *p = [[self alloc] init];
6674  // Add default values
6675  return p;
6676}
6677@end
6678
6679@implementation KBRFSEditListRequestRequestParams
6680
6681- (instancetype)initWithParams:(NSArray *)params {
6682  if ((self = [super initWithParams:params])) {
6683    self.req = [MTLJSONAdapter modelOfClass:KBRFSEditListRequest.class fromJSONDictionary:params[0][@"req"] error:nil];
6684  }
6685  return self;
6686}
6687
6688+ (instancetype)params {
6689  KBRFSEditListRequestRequestParams *p = [[self alloc] init];
6690  // Add default values
6691  return p;
6692}
6693@end
6694
6695@implementation KBRFSSyncStatusRequestRequestParams
6696
6697- (instancetype)initWithParams:(NSArray *)params {
6698  if ((self = [super initWithParams:params])) {
6699    self.req = [MTLJSONAdapter modelOfClass:KBRFSSyncStatusRequest.class fromJSONDictionary:params[0][@"req"] error:nil];
6700  }
6701  return self;
6702}
6703
6704+ (instancetype)params {
6705  KBRFSSyncStatusRequestRequestParams *p = [[self alloc] init];
6706  // Add default values
6707  return p;
6708}
6709@end
6710
6711@implementation KBRKeyfamilyChangedRequestParams
6712
6713- (instancetype)initWithParams:(NSArray *)params {
6714  if ((self = [super initWithParams:params])) {
6715    self.uid = params[0][@"uid"];
6716  }
6717  return self;
6718}
6719
6720+ (instancetype)params {
6721  KBRKeyfamilyChangedRequestParams *p = [[self alloc] init];
6722  // Add default values
6723  return p;
6724}
6725@end
6726
6727@implementation KBRPaperKeyCachedRequestParams
6728
6729- (instancetype)initWithParams:(NSArray *)params {
6730  if ((self = [super initWithParams:params])) {
6731    self.uid = params[0][@"uid"];
6732    self.encKID = params[0][@"encKID"];
6733    self.sigKID = params[0][@"sigKID"];
6734  }
6735  return self;
6736}
6737
6738+ (instancetype)params {
6739  KBRPaperKeyCachedRequestParams *p = [[self alloc] init];
6740  // Add default values
6741  return p;
6742}
6743@end
6744
6745@implementation KBRLoggedInRequestParams
6746
6747- (instancetype)initWithParams:(NSArray *)params {
6748  if ((self = [super initWithParams:params])) {
6749    self.username = params[0][@"username"];
6750  }
6751  return self;
6752}
6753
6754+ (instancetype)params {
6755  KBRLoggedInRequestParams *p = [[self alloc] init];
6756  // Add default values
6757  return p;
6758}
6759@end
6760
6761@implementation KBRClientOutOfDateRequestParams
6762
6763- (instancetype)initWithParams:(NSArray *)params {
6764  if ((self = [super initWithParams:params])) {
6765    self.upgradeTo = params[0][@"upgradeTo"];
6766    self.upgradeURI = params[0][@"upgradeURI"];
6767    self.upgradeMsg = params[0][@"upgradeMsg"];
6768  }
6769  return self;
6770}
6771
6772+ (instancetype)params {
6773  KBRClientOutOfDateRequestParams *p = [[self alloc] init];
6774  // Add default values
6775  return p;
6776}
6777@end
6778
6779@implementation KBRTrackingChangedRequestParams
6780
6781- (instancetype)initWithParams:(NSArray *)params {
6782  if ((self = [super initWithParams:params])) {
6783    self.uid = params[0][@"uid"];
6784    self.username = params[0][@"username"];
6785  }
6786  return self;
6787}
6788
6789+ (instancetype)params {
6790  KBRTrackingChangedRequestParams *p = [[self alloc] init];
6791  // Add default values
6792  return p;
6793}
6794@end
6795
6796@implementation KBRUserChangedRequestParams
6797
6798- (instancetype)initWithParams:(NSArray *)params {
6799  if ((self = [super initWithParams:params])) {
6800    self.uid = params[0][@"uid"];
6801  }
6802  return self;
6803}
6804
6805+ (instancetype)params {
6806  KBRUserChangedRequestParams *p = [[self alloc] init];
6807  // Add default values
6808  return p;
6809}
6810@end
6811
6812@implementation KBRPaperProvisionRequestParams
6813
6814- (instancetype)initWithParams:(NSArray *)params {
6815  if ((self = [super initWithParams:params])) {
6816    self.sessionID = [params[0][@"sessionID"] integerValue];
6817    self.username = params[0][@"username"];
6818    self.deviceName = params[0][@"deviceName"];
6819    self.paperKey = params[0][@"paperKey"];
6820  }
6821  return self;
6822}
6823
6824+ (instancetype)params {
6825  KBRPaperProvisionRequestParams *p = [[self alloc] init];
6826  // Add default values
6827  return p;
6828}
6829@end
6830
6831@implementation KBRPgpSignRequestParams
6832
6833- (instancetype)initWithParams:(NSArray *)params {
6834  if ((self = [super initWithParams:params])) {
6835    self.sessionID = [params[0][@"sessionID"] integerValue];
6836    self.source = [MTLJSONAdapter modelOfClass:KBRStream.class fromJSONDictionary:params[0][@"source"] error:nil];
6837    self.sink = [MTLJSONAdapter modelOfClass:KBRStream.class fromJSONDictionary:params[0][@"sink"] error:nil];
6838    self.opts = [MTLJSONAdapter modelOfClass:KBRPGPSignOptions.class fromJSONDictionary:params[0][@"opts"] error:nil];
6839  }
6840  return self;
6841}
6842
6843+ (instancetype)params {
6844  KBRPgpSignRequestParams *p = [[self alloc] init];
6845  // Add default values
6846  return p;
6847}
6848@end
6849
6850@implementation KBRPgpPullRequestParams
6851
6852- (instancetype)initWithParams:(NSArray *)params {
6853  if ((self = [super initWithParams:params])) {
6854    self.sessionID = [params[0][@"sessionID"] integerValue];
6855    self.userAsserts = KBRValidateArray(params[0][@"userAsserts"], NSString.class);
6856  }
6857  return self;
6858}
6859
6860+ (instancetype)params {
6861  KBRPgpPullRequestParams *p = [[self alloc] init];
6862  // Add default values
6863  return p;
6864}
6865@end
6866
6867@implementation KBRPgpEncryptRequestParams
6868
6869- (instancetype)initWithParams:(NSArray *)params {
6870  if ((self = [super initWithParams:params])) {
6871    self.sessionID = [params[0][@"sessionID"] integerValue];
6872    self.source = [MTLJSONAdapter modelOfClass:KBRStream.class fromJSONDictionary:params[0][@"source"] error:nil];
6873    self.sink = [MTLJSONAdapter modelOfClass:KBRStream.class fromJSONDictionary:params[0][@"sink"] error:nil];
6874    self.opts = [MTLJSONAdapter modelOfClass:KBRPGPEncryptOptions.class fromJSONDictionary:params[0][@"opts"] error:nil];
6875  }
6876  return self;
6877}
6878
6879+ (instancetype)params {
6880  KBRPgpEncryptRequestParams *p = [[self alloc] init];
6881  // Add default values
6882  return p;
6883}
6884@end
6885
6886@implementation KBRPgpDecryptRequestParams
6887
6888- (instancetype)initWithParams:(NSArray *)params {
6889  if ((self = [super initWithParams:params])) {
6890    self.sessionID = [params[0][@"sessionID"] integerValue];
6891    self.source = [MTLJSONAdapter modelOfClass:KBRStream.class fromJSONDictionary:params[0][@"source"] error:nil];
6892    self.sink = [MTLJSONAdapter modelOfClass:KBRStream.class fromJSONDictionary:params[0][@"sink"] error:nil];
6893    self.opts = [MTLJSONAdapter modelOfClass:KBRPGPDecryptOptions.class fromJSONDictionary:params[0][@"opts"] error:nil];
6894  }
6895  return self;
6896}
6897
6898+ (instancetype)params {
6899  KBRPgpDecryptRequestParams *p = [[self alloc] init];
6900  // Add default values
6901  return p;
6902}
6903@end
6904
6905@implementation KBRPgpVerifyRequestParams
6906
6907- (instancetype)initWithParams:(NSArray *)params {
6908  if ((self = [super initWithParams:params])) {
6909    self.sessionID = [params[0][@"sessionID"] integerValue];
6910    self.source = [MTLJSONAdapter modelOfClass:KBRStream.class fromJSONDictionary:params[0][@"source"] error:nil];
6911    self.opts = [MTLJSONAdapter modelOfClass:KBRPGPVerifyOptions.class fromJSONDictionary:params[0][@"opts"] error:nil];
6912  }
6913  return self;
6914}
6915
6916+ (instancetype)params {
6917  KBRPgpVerifyRequestParams *p = [[self alloc] init];
6918  // Add default values
6919  return p;
6920}
6921@end
6922
6923@implementation KBRPgpImportRequestParams
6924
6925- (instancetype)initWithParams:(NSArray *)params {
6926  if ((self = [super initWithParams:params])) {
6927    self.sessionID = [params[0][@"sessionID"] integerValue];
6928    self.key = params[0][@"key"];
6929    self.pushSecret = [params[0][@"pushSecret"] boolValue];
6930  }
6931  return self;
6932}
6933
6934+ (instancetype)params {
6935  KBRPgpImportRequestParams *p = [[self alloc] init];
6936  // Add default values
6937  return p;
6938}
6939@end
6940
6941@implementation KBRPgpExportRequestParams
6942
6943- (instancetype)initWithParams:(NSArray *)params {
6944  if ((self = [super initWithParams:params])) {
6945    self.sessionID = [params[0][@"sessionID"] integerValue];
6946    self.options = [MTLJSONAdapter modelOfClass:KBRPGPQuery.class fromJSONDictionary:params[0][@"options"] error:nil];
6947  }
6948  return self;
6949}
6950
6951+ (instancetype)params {
6952  KBRPgpExportRequestParams *p = [[self alloc] init];
6953  // Add default values
6954  return p;
6955}
6956@end
6957
6958@implementation KBRPgpExportByFingerprintRequestParams
6959
6960- (instancetype)initWithParams:(NSArray *)params {
6961  if ((self = [super initWithParams:params])) {
6962    self.sessionID = [params[0][@"sessionID"] integerValue];
6963    self.options = [MTLJSONAdapter modelOfClass:KBRPGPQuery.class fromJSONDictionary:params[0][@"options"] error:nil];
6964  }
6965  return self;
6966}
6967
6968+ (instancetype)params {
6969  KBRPgpExportByFingerprintRequestParams *p = [[self alloc] init];
6970  // Add default values
6971  return p;
6972}
6973@end
6974
6975@implementation KBRPgpExportByKIDRequestParams
6976
6977- (instancetype)initWithParams:(NSArray *)params {
6978  if ((self = [super initWithParams:params])) {
6979    self.sessionID = [params[0][@"sessionID"] integerValue];
6980    self.options = [MTLJSONAdapter modelOfClass:KBRPGPQuery.class fromJSONDictionary:params[0][@"options"] error:nil];
6981  }
6982  return self;
6983}
6984
6985+ (instancetype)params {
6986  KBRPgpExportByKIDRequestParams *p = [[self alloc] init];
6987  // Add default values
6988  return p;
6989}
6990@end
6991
6992@implementation KBRPgpKeyGenRequestParams
6993
6994- (instancetype)initWithParams:(NSArray *)params {
6995  if ((self = [super initWithParams:params])) {
6996    self.sessionID = [params[0][@"sessionID"] integerValue];
6997    self.primaryBits = [params[0][@"primaryBits"] integerValue];
6998    self.subkeyBits = [params[0][@"subkeyBits"] integerValue];
6999    self.createUids = [MTLJSONAdapter modelOfClass:KBRPGPCreateUids.class fromJSONDictionary:params[0][@"createUids"] error:nil];
7000    self.allowMulti = [params[0][@"allowMulti"] boolValue];
7001    self.doExport = [params[0][@"doExport"] boolValue];
7002    self.pushSecret = [params[0][@"pushSecret"] boolValue];
7003  }
7004  return self;
7005}
7006
7007+ (instancetype)params {
7008  KBRPgpKeyGenRequestParams *p = [[self alloc] init];
7009  // Add default values
7010  return p;
7011}
7012@end
7013
7014@implementation KBRPgpKeyGenDefaultRequestParams
7015
7016- (instancetype)initWithParams:(NSArray *)params {
7017  if ((self = [super initWithParams:params])) {
7018    self.sessionID = [params[0][@"sessionID"] integerValue];
7019    self.createUids = [MTLJSONAdapter modelOfClass:KBRPGPCreateUids.class fromJSONDictionary:params[0][@"createUids"] error:nil];
7020  }
7021  return self;
7022}
7023
7024+ (instancetype)params {
7025  KBRPgpKeyGenDefaultRequestParams *p = [[self alloc] init];
7026  // Add default values
7027  return p;
7028}
7029@end
7030
7031@implementation KBRPgpDeletePrimaryRequestParams
7032
7033- (instancetype)initWithParams:(NSArray *)params {
7034  if ((self = [super initWithParams:params])) {
7035    self.sessionID = [params[0][@"sessionID"] integerValue];
7036  }
7037  return self;
7038}
7039
7040+ (instancetype)params {
7041  KBRPgpDeletePrimaryRequestParams *p = [[self alloc] init];
7042  // Add default values
7043  return p;
7044}
7045@end
7046
7047@implementation KBRPgpSelectRequestParams
7048
7049- (instancetype)initWithParams:(NSArray *)params {
7050  if ((self = [super initWithParams:params])) {
7051    self.sessionID = [params[0][@"sessionID"] integerValue];
7052    self.fingerprintQuery = params[0][@"fingerprintQuery"];
7053    self.allowMulti = [params[0][@"allowMulti"] boolValue];
7054    self.skipImport = [params[0][@"skipImport"] boolValue];
7055    self.onlyImport = [params[0][@"onlyImport"] boolValue];
7056  }
7057  return self;
7058}
7059
7060+ (instancetype)params {
7061  KBRPgpSelectRequestParams *p = [[self alloc] init];
7062  // Add default values
7063  return p;
7064}
7065@end
7066
7067@implementation KBRPgpUpdateRequestParams
7068
7069- (instancetype)initWithParams:(NSArray *)params {
7070  if ((self = [super initWithParams:params])) {
7071    self.sessionID = [params[0][@"sessionID"] integerValue];
7072    self.all = [params[0][@"all"] boolValue];
7073    self.fingerprints = KBRValidateArray(params[0][@"fingerprints"], NSString.class);
7074  }
7075  return self;
7076}
7077
7078+ (instancetype)params {
7079  KBRPgpUpdateRequestParams *p = [[self alloc] init];
7080  // Add default values
7081  return p;
7082}
7083@end
7084
7085@implementation KBRPgpPurgeRequestParams
7086
7087- (instancetype)initWithParams:(NSArray *)params {
7088  if ((self = [super initWithParams:params])) {
7089    self.sessionID = [params[0][@"sessionID"] integerValue];
7090    self.doPurge = [params[0][@"doPurge"] boolValue];
7091  }
7092  return self;
7093}
7094
7095+ (instancetype)params {
7096  KBRPgpPurgeRequestParams *p = [[self alloc] init];
7097  // Add default values
7098  return p;
7099}
7100@end
7101
7102@implementation KBRPgpStorageDismissRequestParams
7103
7104- (instancetype)initWithParams:(NSArray *)params {
7105  if ((self = [super initWithParams:params])) {
7106    self.sessionID = [params[0][@"sessionID"] integerValue];
7107  }
7108  return self;
7109}
7110
7111+ (instancetype)params {
7112  KBRPgpStorageDismissRequestParams *p = [[self alloc] init];
7113  // Add default values
7114  return p;
7115}
7116@end
7117
7118@implementation KBROutputSignatureSuccessRequestParams
7119
7120- (instancetype)initWithParams:(NSArray *)params {
7121  if ((self = [super initWithParams:params])) {
7122    self.sessionID = [params[0][@"sessionID"] integerValue];
7123    self.fingerprint = params[0][@"fingerprint"];
7124    self.username = params[0][@"username"];
7125    self.signedAt = [params[0][@"signedAt"] longLongValue];
7126  }
7127  return self;
7128}
7129
7130+ (instancetype)params {
7131  KBROutputSignatureSuccessRequestParams *p = [[self alloc] init];
7132  // Add default values
7133  return p;
7134}
7135@end
7136
7137@implementation KBROutputSignatureSuccessNonKeybaseRequestParams
7138
7139- (instancetype)initWithParams:(NSArray *)params {
7140  if ((self = [super initWithParams:params])) {
7141    self.sessionID = [params[0][@"sessionID"] integerValue];
7142    self.keyID = params[0][@"keyID"];
7143    self.signedAt = [params[0][@"signedAt"] longLongValue];
7144  }
7145  return self;
7146}
7147
7148+ (instancetype)params {
7149  KBROutputSignatureSuccessNonKeybaseRequestParams *p = [[self alloc] init];
7150  // Add default values
7151  return p;
7152}
7153@end
7154
7155@implementation KBRKeyGeneratedRequestParams
7156
7157- (instancetype)initWithParams:(NSArray *)params {
7158  if ((self = [super initWithParams:params])) {
7159    self.sessionID = [params[0][@"sessionID"] integerValue];
7160    self.kid = params[0][@"kid"];
7161    self.key = [MTLJSONAdapter modelOfClass:KBRKeyInfo.class fromJSONDictionary:params[0][@"key"] error:nil];
7162  }
7163  return self;
7164}
7165
7166+ (instancetype)params {
7167  KBRKeyGeneratedRequestParams *p = [[self alloc] init];
7168  // Add default values
7169  return p;
7170}
7171@end
7172
7173@implementation KBRShouldPushPrivateRequestParams
7174
7175- (instancetype)initWithParams:(NSArray *)params {
7176  if ((self = [super initWithParams:params])) {
7177    self.sessionID = [params[0][@"sessionID"] integerValue];
7178  }
7179  return self;
7180}
7181
7182+ (instancetype)params {
7183  KBRShouldPushPrivateRequestParams *p = [[self alloc] init];
7184  // Add default values
7185  return p;
7186}
7187@end
7188
7189@implementation KBRFinishedRequestParams
7190
7191- (instancetype)initWithParams:(NSArray *)params {
7192  if ((self = [super initWithParams:params])) {
7193    self.sessionID = [params[0][@"sessionID"] integerValue];
7194  }
7195  return self;
7196}
7197
7198+ (instancetype)params {
7199  KBRFinishedRequestParams *p = [[self alloc] init];
7200  // Add default values
7201  return p;
7202}
7203@end
7204
7205@implementation KBRStartProofRequestParams
7206
7207- (instancetype)initWithParams:(NSArray *)params {
7208  if ((self = [super initWithParams:params])) {
7209    self.sessionID = [params[0][@"sessionID"] integerValue];
7210    self.service = params[0][@"service"];
7211    self.username = params[0][@"username"];
7212    self.force = [params[0][@"force"] boolValue];
7213    self.promptPosted = [params[0][@"promptPosted"] boolValue];
7214    self.automatic = [params[0][@"automatic"] boolValue];
7215  }
7216  return self;
7217}
7218
7219+ (instancetype)params {
7220  KBRStartProofRequestParams *p = [[self alloc] init];
7221  // Add default values
7222  return p;
7223}
7224@end
7225
7226@implementation KBRCheckProofRequestParams
7227
7228- (instancetype)initWithParams:(NSArray *)params {
7229  if ((self = [super initWithParams:params])) {
7230    self.sessionID = [params[0][@"sessionID"] integerValue];
7231    self.sigID = params[0][@"sigID"];
7232  }
7233  return self;
7234}
7235
7236+ (instancetype)params {
7237  KBRCheckProofRequestParams *p = [[self alloc] init];
7238  // Add default values
7239  return p;
7240}
7241@end
7242
7243@implementation KBRPromptOverwriteRequestParams
7244
7245- (instancetype)initWithParams:(NSArray *)params {
7246  if ((self = [super initWithParams:params])) {
7247    self.sessionID = [params[0][@"sessionID"] integerValue];
7248    self.account = params[0][@"account"];
7249    self.typ = [params[0][@"typ"] integerValue];
7250  }
7251  return self;
7252}
7253
7254+ (instancetype)params {
7255  KBRPromptOverwriteRequestParams *p = [[self alloc] init];
7256  // Add default values
7257  return p;
7258}
7259@end
7260
7261@implementation KBRPromptUsernameRequestParams
7262
7263- (instancetype)initWithParams:(NSArray *)params {
7264  if ((self = [super initWithParams:params])) {
7265    self.sessionID = [params[0][@"sessionID"] integerValue];
7266    self.prompt = params[0][@"prompt"];
7267    self.prevError = [MTLJSONAdapter modelOfClass:KBRStatus.class fromJSONDictionary:params[0][@"prevError"] error:nil];
7268  }
7269  return self;
7270}
7271
7272+ (instancetype)params {
7273  KBRPromptUsernameRequestParams *p = [[self alloc] init];
7274  // Add default values
7275  return p;
7276}
7277@end
7278
7279@implementation KBROutputPrechecksRequestParams
7280
7281- (instancetype)initWithParams:(NSArray *)params {
7282  if ((self = [super initWithParams:params])) {
7283    self.sessionID = [params[0][@"sessionID"] integerValue];
7284    self.text = [MTLJSONAdapter modelOfClass:KBRText.class fromJSONDictionary:params[0][@"text"] error:nil];
7285  }
7286  return self;
7287}
7288
7289+ (instancetype)params {
7290  KBROutputPrechecksRequestParams *p = [[self alloc] init];
7291  // Add default values
7292  return p;
7293}
7294@end
7295
7296@implementation KBRPreProofWarningRequestParams
7297
7298- (instancetype)initWithParams:(NSArray *)params {
7299  if ((self = [super initWithParams:params])) {
7300    self.sessionID = [params[0][@"sessionID"] integerValue];
7301    self.text = [MTLJSONAdapter modelOfClass:KBRText.class fromJSONDictionary:params[0][@"text"] error:nil];
7302  }
7303  return self;
7304}
7305
7306+ (instancetype)params {
7307  KBRPreProofWarningRequestParams *p = [[self alloc] init];
7308  // Add default values
7309  return p;
7310}
7311@end
7312
7313@implementation KBROutputInstructionsRequestParams
7314
7315- (instancetype)initWithParams:(NSArray *)params {
7316  if ((self = [super initWithParams:params])) {
7317    self.sessionID = [params[0][@"sessionID"] integerValue];
7318    self.instructions = [MTLJSONAdapter modelOfClass:KBRText.class fromJSONDictionary:params[0][@"instructions"] error:nil];
7319    self.proof = params[0][@"proof"];
7320  }
7321  return self;
7322}
7323
7324+ (instancetype)params {
7325  KBROutputInstructionsRequestParams *p = [[self alloc] init];
7326  // Add default values
7327  return p;
7328}
7329@end
7330
7331@implementation KBROkToCheckRequestParams
7332
7333- (instancetype)initWithParams:(NSArray *)params {
7334  if ((self = [super initWithParams:params])) {
7335    self.sessionID = [params[0][@"sessionID"] integerValue];
7336    self.name = params[0][@"name"];
7337    self.attempt = [params[0][@"attempt"] integerValue];
7338  }
7339  return self;
7340}
7341
7342+ (instancetype)params {
7343  KBROkToCheckRequestParams *p = [[self alloc] init];
7344  // Add default values
7345  return p;
7346}
7347@end
7348
7349@implementation KBRDisplayRecheckWarningRequestParams
7350
7351- (instancetype)initWithParams:(NSArray *)params {
7352  if ((self = [super initWithParams:params])) {
7353    self.sessionID = [params[0][@"sessionID"] integerValue];
7354    self.text = [MTLJSONAdapter modelOfClass:KBRText.class fromJSONDictionary:params[0][@"text"] error:nil];
7355  }
7356  return self;
7357}
7358
7359+ (instancetype)params {
7360  KBRDisplayRecheckWarningRequestParams *p = [[self alloc] init];
7361  // Add default values
7362  return p;
7363}
7364@end
7365
7366@implementation KBRChooseProvisioningMethodRequestParams
7367
7368- (instancetype)initWithParams:(NSArray *)params {
7369  if ((self = [super initWithParams:params])) {
7370    self.sessionID = [params[0][@"sessionID"] integerValue];
7371    self.gpgOption = [params[0][@"gpgOption"] boolValue];
7372  }
7373  return self;
7374}
7375
7376+ (instancetype)params {
7377  KBRChooseProvisioningMethodRequestParams *p = [[self alloc] init];
7378  // Add default values
7379  return p;
7380}
7381@end
7382
7383@implementation KBRChooseGPGMethodRequestParams
7384
7385- (instancetype)initWithParams:(NSArray *)params {
7386  if ((self = [super initWithParams:params])) {
7387    self.sessionID = [params[0][@"sessionID"] integerValue];
7388    self.keys = [MTLJSONAdapter modelsOfClass:KBRGPGKey.class fromJSONArray:params[0][@"keys"] error:nil];
7389  }
7390  return self;
7391}
7392
7393+ (instancetype)params {
7394  KBRChooseGPGMethodRequestParams *p = [[self alloc] init];
7395  // Add default values
7396  return p;
7397}
7398@end
7399
7400@implementation KBRSwitchToGPGSignOKRequestParams
7401
7402- (instancetype)initWithParams:(NSArray *)params {
7403  if ((self = [super initWithParams:params])) {
7404    self.sessionID = [params[0][@"sessionID"] integerValue];
7405    self.key = [MTLJSONAdapter modelOfClass:KBRGPGKey.class fromJSONDictionary:params[0][@"key"] error:nil];
7406    self.importError = params[0][@"importError"];
7407  }
7408  return self;
7409}
7410
7411+ (instancetype)params {
7412  KBRSwitchToGPGSignOKRequestParams *p = [[self alloc] init];
7413  // Add default values
7414  return p;
7415}
7416@end
7417
7418@implementation KBRChooseDeviceRequestParams
7419
7420- (instancetype)initWithParams:(NSArray *)params {
7421  if ((self = [super initWithParams:params])) {
7422    self.sessionID = [params[0][@"sessionID"] integerValue];
7423    self.devices = [MTLJSONAdapter modelsOfClass:KBRDevice.class fromJSONArray:params[0][@"devices"] error:nil];
7424  }
7425  return self;
7426}
7427
7428+ (instancetype)params {
7429  KBRChooseDeviceRequestParams *p = [[self alloc] init];
7430  // Add default values
7431  return p;
7432}
7433@end
7434
7435@implementation KBRChooseDeviceTypeRequestParams
7436
7437- (instancetype)initWithParams:(NSArray *)params {
7438  if ((self = [super initWithParams:params])) {
7439    self.sessionID = [params[0][@"sessionID"] integerValue];
7440    self.kind = [params[0][@"kind"] integerValue];
7441  }
7442  return self;
7443}
7444
7445+ (instancetype)params {
7446  KBRChooseDeviceTypeRequestParams *p = [[self alloc] init];
7447  // Add default values
7448  return p;
7449}
7450@end
7451
7452@implementation KBRDisplayAndPromptSecretRequestParams
7453
7454- (instancetype)initWithParams:(NSArray *)params {
7455  if ((self = [super initWithParams:params])) {
7456    self.sessionID = [params[0][@"sessionID"] integerValue];
7457    self.secret = params[0][@"secret"];
7458    self.phrase = params[0][@"phrase"];
7459    self.otherDeviceType = [params[0][@"otherDeviceType"] integerValue];
7460  }
7461  return self;
7462}
7463
7464+ (instancetype)params {
7465  KBRDisplayAndPromptSecretRequestParams *p = [[self alloc] init];
7466  // Add default values
7467  return p;
7468}
7469@end
7470
7471@implementation KBRDisplaySecretExchangedRequestParams
7472
7473- (instancetype)initWithParams:(NSArray *)params {
7474  if ((self = [super initWithParams:params])) {
7475    self.sessionID = [params[0][@"sessionID"] integerValue];
7476  }
7477  return self;
7478}
7479
7480+ (instancetype)params {
7481  KBRDisplaySecretExchangedRequestParams *p = [[self alloc] init];
7482  // Add default values
7483  return p;
7484}
7485@end
7486
7487@implementation KBRPromptNewDeviceNameRequestParams
7488
7489- (instancetype)initWithParams:(NSArray *)params {
7490  if ((self = [super initWithParams:params])) {
7491    self.sessionID = [params[0][@"sessionID"] integerValue];
7492    self.existingDevices = KBRValidateArray(params[0][@"existingDevices"], NSString.class);
7493    self.errorMessage = params[0][@"errorMessage"];
7494  }
7495  return self;
7496}
7497
7498+ (instancetype)params {
7499  KBRPromptNewDeviceNameRequestParams *p = [[self alloc] init];
7500  // Add default values
7501  return p;
7502}
7503@end
7504
7505@implementation KBRProvisioneeSuccessRequestParams
7506
7507- (instancetype)initWithParams:(NSArray *)params {
7508  if ((self = [super initWithParams:params])) {
7509    self.sessionID = [params[0][@"sessionID"] integerValue];
7510    self.username = params[0][@"username"];
7511    self.deviceName = params[0][@"deviceName"];
7512  }
7513  return self;
7514}
7515
7516+ (instancetype)params {
7517  KBRProvisioneeSuccessRequestParams *p = [[self alloc] init];
7518  // Add default values
7519  return p;
7520}
7521@end
7522
7523@implementation KBRProvisionerSuccessRequestParams
7524
7525- (instancetype)initWithParams:(NSArray *)params {
7526  if ((self = [super initWithParams:params])) {
7527    self.sessionID = [params[0][@"sessionID"] integerValue];
7528    self.deviceName = params[0][@"deviceName"];
7529    self.deviceType = params[0][@"deviceType"];
7530  }
7531  return self;
7532}
7533
7534+ (instancetype)params {
7535  KBRProvisionerSuccessRequestParams *p = [[self alloc] init];
7536  // Add default values
7537  return p;
7538}
7539@end
7540
7541@implementation KBRVerifySessionRequestParams
7542
7543- (instancetype)initWithParams:(NSArray *)params {
7544  if ((self = [super initWithParams:params])) {
7545    self.session = params[0][@"session"];
7546  }
7547  return self;
7548}
7549
7550+ (instancetype)params {
7551  KBRVerifySessionRequestParams *p = [[self alloc] init];
7552  // Add default values
7553  return p;
7554}
7555@end
7556
7557@implementation KBRReachabilityChangedRequestParams
7558
7559- (instancetype)initWithParams:(NSArray *)params {
7560  if ((self = [super initWithParams:params])) {
7561    self.reachability = [MTLJSONAdapter modelOfClass:KBRReachability.class fromJSONDictionary:params[0][@"reachability"] error:nil];
7562  }
7563  return self;
7564}
7565
7566+ (instancetype)params {
7567  KBRReachabilityChangedRequestParams *p = [[self alloc] init];
7568  // Add default values
7569  return p;
7570}
7571@end
7572
7573@implementation KBRShowPendingRekeyStatusRequestParams
7574
7575- (instancetype)initWithParams:(NSArray *)params {
7576  if ((self = [super initWithParams:params])) {
7577    self.sessionID = [params[0][@"sessionID"] integerValue];
7578  }
7579  return self;
7580}
7581
7582+ (instancetype)params {
7583  KBRShowPendingRekeyStatusRequestParams *p = [[self alloc] init];
7584  // Add default values
7585  return p;
7586}
7587@end
7588
7589@implementation KBRGetPendingRekeyStatusRequestParams
7590
7591- (instancetype)initWithParams:(NSArray *)params {
7592  if ((self = [super initWithParams:params])) {
7593    self.sessionID = [params[0][@"sessionID"] integerValue];
7594  }
7595  return self;
7596}
7597
7598+ (instancetype)params {
7599  KBRGetPendingRekeyStatusRequestParams *p = [[self alloc] init];
7600  // Add default values
7601  return p;
7602}
7603@end
7604
7605@implementation KBRDebugShowRekeyStatusRequestParams
7606
7607- (instancetype)initWithParams:(NSArray *)params {
7608  if ((self = [super initWithParams:params])) {
7609    self.sessionID = [params[0][@"sessionID"] integerValue];
7610  }
7611  return self;
7612}
7613
7614+ (instancetype)params {
7615  KBRDebugShowRekeyStatusRequestParams *p = [[self alloc] init];
7616  // Add default values
7617  return p;
7618}
7619@end
7620
7621@implementation KBRRekeyStatusFinishRequestParams
7622
7623- (instancetype)initWithParams:(NSArray *)params {
7624  if ((self = [super initWithParams:params])) {
7625    self.sessionID = [params[0][@"sessionID"] integerValue];
7626  }
7627  return self;
7628}
7629
7630+ (instancetype)params {
7631  KBRRekeyStatusFinishRequestParams *p = [[self alloc] init];
7632  // Add default values
7633  return p;
7634}
7635@end
7636
7637@implementation KBRRekeySyncRequestParams
7638
7639- (instancetype)initWithParams:(NSArray *)params {
7640  if ((self = [super initWithParams:params])) {
7641    self.sessionID = [params[0][@"sessionID"] integerValue];
7642    self.force = [params[0][@"force"] boolValue];
7643  }
7644  return self;
7645}
7646
7647+ (instancetype)params {
7648  KBRRekeySyncRequestParams *p = [[self alloc] init];
7649  // Add default values
7650  return p;
7651}
7652@end
7653
7654@implementation KBRGetRevokeWarningRequestParams
7655
7656- (instancetype)initWithParams:(NSArray *)params {
7657  if ((self = [super initWithParams:params])) {
7658    self.session = [params[0][@"session"] integerValue];
7659    self.actingDevice = params[0][@"actingDevice"];
7660    self.targetDevice = params[0][@"targetDevice"];
7661  }
7662  return self;
7663}
7664
7665+ (instancetype)params {
7666  KBRGetRevokeWarningRequestParams *p = [[self alloc] init];
7667  // Add default values
7668  return p;
7669}
7670@end
7671
7672@implementation KBRRefreshRequestParams
7673
7674- (instancetype)initWithParams:(NSArray *)params {
7675  if ((self = [super initWithParams:params])) {
7676    self.sessionID = [params[0][@"sessionID"] integerValue];
7677    self.problemSetDevices = [MTLJSONAdapter modelOfClass:KBRProblemSetDevices.class fromJSONDictionary:params[0][@"problemSetDevices"] error:nil];
7678  }
7679  return self;
7680}
7681
7682+ (instancetype)params {
7683  KBRRefreshRequestParams *p = [[self alloc] init];
7684  // Add default values
7685  return p;
7686}
7687@end
7688
7689@implementation KBRRekeySendEventRequestParams
7690
7691- (instancetype)initWithParams:(NSArray *)params {
7692  if ((self = [super initWithParams:params])) {
7693    self.sessionID = [params[0][@"sessionID"] integerValue];
7694    self.event = [MTLJSONAdapter modelOfClass:KBRRekeyEvent.class fromJSONDictionary:params[0][@"event"] error:nil];
7695  }
7696  return self;
7697}
7698
7699+ (instancetype)params {
7700  KBRRekeySendEventRequestParams *p = [[self alloc] init];
7701  // Add default values
7702  return p;
7703}
7704@end
7705
7706@implementation KBRRevokeKeyRequestParams
7707
7708- (instancetype)initWithParams:(NSArray *)params {
7709  if ((self = [super initWithParams:params])) {
7710    self.sessionID = [params[0][@"sessionID"] integerValue];
7711    self.keyID = params[0][@"keyID"];
7712  }
7713  return self;
7714}
7715
7716+ (instancetype)params {
7717  KBRRevokeKeyRequestParams *p = [[self alloc] init];
7718  // Add default values
7719  return p;
7720}
7721@end
7722
7723@implementation KBRRevokeDeviceRequestParams
7724
7725- (instancetype)initWithParams:(NSArray *)params {
7726  if ((self = [super initWithParams:params])) {
7727    self.sessionID = [params[0][@"sessionID"] integerValue];
7728    self.deviceID = params[0][@"deviceID"];
7729    self.force = [params[0][@"force"] boolValue];
7730  }
7731  return self;
7732}
7733
7734+ (instancetype)params {
7735  KBRRevokeDeviceRequestParams *p = [[self alloc] init];
7736  // Add default values
7737  return p;
7738}
7739@end
7740
7741@implementation KBRRevokeSigsRequestParams
7742
7743- (instancetype)initWithParams:(NSArray *)params {
7744  if ((self = [super initWithParams:params])) {
7745    self.sessionID = [params[0][@"sessionID"] integerValue];
7746    self.sigIDQueries = KBRValidateArray(params[0][@"sigIDQueries"], NSString.class);
7747  }
7748  return self;
7749}
7750
7751+ (instancetype)params {
7752  KBRRevokeSigsRequestParams *p = [[self alloc] init];
7753  // Add default values
7754  return p;
7755}
7756@end
7757
7758@implementation KBRSaltpackEncryptRequestParams
7759
7760- (instancetype)initWithParams:(NSArray *)params {
7761  if ((self = [super initWithParams:params])) {
7762    self.sessionID = [params[0][@"sessionID"] integerValue];
7763    self.source = [MTLJSONAdapter modelOfClass:KBRStream.class fromJSONDictionary:params[0][@"source"] error:nil];
7764    self.sink = [MTLJSONAdapter modelOfClass:KBRStream.class fromJSONDictionary:params[0][@"sink"] error:nil];
7765    self.opts = [MTLJSONAdapter modelOfClass:KBRSaltpackEncryptOptions.class fromJSONDictionary:params[0][@"opts"] error:nil];
7766  }
7767  return self;
7768}
7769
7770+ (instancetype)params {
7771  KBRSaltpackEncryptRequestParams *p = [[self alloc] init];
7772  // Add default values
7773  return p;
7774}
7775@end
7776
7777@implementation KBRSaltpackDecryptRequestParams
7778
7779- (instancetype)initWithParams:(NSArray *)params {
7780  if ((self = [super initWithParams:params])) {
7781    self.sessionID = [params[0][@"sessionID"] integerValue];
7782    self.source = [MTLJSONAdapter modelOfClass:KBRStream.class fromJSONDictionary:params[0][@"source"] error:nil];
7783    self.sink = [MTLJSONAdapter modelOfClass:KBRStream.class fromJSONDictionary:params[0][@"sink"] error:nil];
7784    self.opts = [MTLJSONAdapter modelOfClass:KBRSaltpackDecryptOptions.class fromJSONDictionary:params[0][@"opts"] error:nil];
7785  }
7786  return self;
7787}
7788
7789+ (instancetype)params {
7790  KBRSaltpackDecryptRequestParams *p = [[self alloc] init];
7791  // Add default values
7792  return p;
7793}
7794@end
7795
7796@implementation KBRSaltpackSignRequestParams
7797
7798- (instancetype)initWithParams:(NSArray *)params {
7799  if ((self = [super initWithParams:params])) {
7800    self.sessionID = [params[0][@"sessionID"] integerValue];
7801    self.source = [MTLJSONAdapter modelOfClass:KBRStream.class fromJSONDictionary:params[0][@"source"] error:nil];
7802    self.sink = [MTLJSONAdapter modelOfClass:KBRStream.class fromJSONDictionary:params[0][@"sink"] error:nil];
7803    self.opts = [MTLJSONAdapter modelOfClass:KBRSaltpackSignOptions.class fromJSONDictionary:params[0][@"opts"] error:nil];
7804  }
7805  return self;
7806}
7807
7808+ (instancetype)params {
7809  KBRSaltpackSignRequestParams *p = [[self alloc] init];
7810  // Add default values
7811  return p;
7812}
7813@end
7814
7815@implementation KBRSaltpackVerifyRequestParams
7816
7817- (instancetype)initWithParams:(NSArray *)params {
7818  if ((self = [super initWithParams:params])) {
7819    self.sessionID = [params[0][@"sessionID"] integerValue];
7820    self.source = [MTLJSONAdapter modelOfClass:KBRStream.class fromJSONDictionary:params[0][@"source"] error:nil];
7821    self.sink = [MTLJSONAdapter modelOfClass:KBRStream.class fromJSONDictionary:params[0][@"sink"] error:nil];
7822    self.opts = [MTLJSONAdapter modelOfClass:KBRSaltpackVerifyOptions.class fromJSONDictionary:params[0][@"opts"] error:nil];
7823  }
7824  return self;
7825}
7826
7827+ (instancetype)params {
7828  KBRSaltpackVerifyRequestParams *p = [[self alloc] init];
7829  // Add default values
7830  return p;
7831}
7832@end
7833
7834@implementation KBRScanProofsRequestParams
7835
7836- (instancetype)initWithParams:(NSArray *)params {
7837  if ((self = [super initWithParams:params])) {
7838    self.sessionID = [params[0][@"sessionID"] integerValue];
7839    self.infile = params[0][@"infile"];
7840    self.indices = params[0][@"indices"];
7841    self.sigid = params[0][@"sigid"];
7842    self.ratelimit = [params[0][@"ratelimit"] integerValue];
7843    self.cachefile = params[0][@"cachefile"];
7844    self.ignorefile = params[0][@"ignorefile"];
7845  }
7846  return self;
7847}
7848
7849+ (instancetype)params {
7850  KBRScanProofsRequestParams *p = [[self alloc] init];
7851  // Add default values
7852  return p;
7853}
7854@end
7855
7856@implementation KBRGetPassphraseRequestParams
7857
7858- (instancetype)initWithParams:(NSArray *)params {
7859  if ((self = [super initWithParams:params])) {
7860    self.sessionID = [params[0][@"sessionID"] integerValue];
7861    self.pinentry = [MTLJSONAdapter modelOfClass:KBRGUIEntryArg.class fromJSONDictionary:params[0][@"pinentry"] error:nil];
7862    self.terminal = [MTLJSONAdapter modelOfClass:KBRSecretEntryArg.class fromJSONDictionary:params[0][@"terminal"] error:nil];
7863  }
7864  return self;
7865}
7866
7867+ (instancetype)params {
7868  KBRGetPassphraseRequestParams *p = [[self alloc] init];
7869  // Add default values
7870  return p;
7871}
7872@end
7873
7874@implementation KBRGetSecretKeysRequestParams
7875
7876- (instancetype)initWithParams:(NSArray *)params {
7877  if ((self = [super initWithParams:params])) {
7878    self.sessionID = [params[0][@"sessionID"] integerValue];
7879  }
7880  return self;
7881}
7882
7883+ (instancetype)params {
7884  KBRGetSecretKeysRequestParams *p = [[self alloc] init];
7885  // Add default values
7886  return p;
7887}
7888@end
7889
7890@implementation KBRCurrentSessionRequestParams
7891
7892- (instancetype)initWithParams:(NSArray *)params {
7893  if ((self = [super initWithParams:params])) {
7894    self.sessionID = [params[0][@"sessionID"] integerValue];
7895  }
7896  return self;
7897}
7898
7899+ (instancetype)params {
7900  KBRCurrentSessionRequestParams *p = [[self alloc] init];
7901  // Add default values
7902  return p;
7903}
7904@end
7905
7906@implementation KBRCheckUsernameAvailableRequestParams
7907
7908- (instancetype)initWithParams:(NSArray *)params {
7909  if ((self = [super initWithParams:params])) {
7910    self.sessionID = [params[0][@"sessionID"] integerValue];
7911    self.username = params[0][@"username"];
7912  }
7913  return self;
7914}
7915
7916+ (instancetype)params {
7917  KBRCheckUsernameAvailableRequestParams *p = [[self alloc] init];
7918  // Add default values
7919  return p;
7920}
7921@end
7922
7923@implementation KBRSignupRequestParams
7924
7925- (instancetype)initWithParams:(NSArray *)params {
7926  if ((self = [super initWithParams:params])) {
7927    self.sessionID = [params[0][@"sessionID"] integerValue];
7928    self.email = params[0][@"email"];
7929    self.inviteCode = params[0][@"inviteCode"];
7930    self.passphrase = params[0][@"passphrase"];
7931    self.username = params[0][@"username"];
7932    self.deviceName = params[0][@"deviceName"];
7933    self.deviceType = [params[0][@"deviceType"] integerValue];
7934    self.storeSecret = [params[0][@"storeSecret"] boolValue];
7935    self.skipMail = [params[0][@"skipMail"] boolValue];
7936    self.genPGPBatch = [params[0][@"genPGPBatch"] boolValue];
7937  }
7938  return self;
7939}
7940
7941+ (instancetype)params {
7942  KBRSignupRequestParams *p = [[self alloc] init];
7943  // Add default values
7944  return p;
7945}
7946@end
7947
7948@implementation KBRInviteRequestRequestParams
7949
7950- (instancetype)initWithParams:(NSArray *)params {
7951  if ((self = [super initWithParams:params])) {
7952    self.sessionID = [params[0][@"sessionID"] integerValue];
7953    self.email = params[0][@"email"];
7954    self.fullname = params[0][@"fullname"];
7955    self.notes = params[0][@"notes"];
7956  }
7957  return self;
7958}
7959
7960+ (instancetype)params {
7961  KBRInviteRequestRequestParams *p = [[self alloc] init];
7962  // Add default values
7963  return p;
7964}
7965@end
7966
7967@implementation KBRCheckInvitationCodeRequestParams
7968
7969- (instancetype)initWithParams:(NSArray *)params {
7970  if ((self = [super initWithParams:params])) {
7971    self.sessionID = [params[0][@"sessionID"] integerValue];
7972    self.invitationCode = params[0][@"invitationCode"];
7973  }
7974  return self;
7975}
7976
7977+ (instancetype)params {
7978  KBRCheckInvitationCodeRequestParams *p = [[self alloc] init];
7979  // Add default values
7980  return p;
7981}
7982@end
7983
7984@implementation KBRSigListRequestParams
7985
7986- (instancetype)initWithParams:(NSArray *)params {
7987  if ((self = [super initWithParams:params])) {
7988    self.sessionID = [params[0][@"sessionID"] integerValue];
7989    self.arg = [MTLJSONAdapter modelOfClass:KBRSigListArgs.class fromJSONDictionary:params[0][@"arg"] error:nil];
7990  }
7991  return self;
7992}
7993
7994+ (instancetype)params {
7995  KBRSigListRequestParams *p = [[self alloc] init];
7996  // Add default values
7997  return p;
7998}
7999@end
8000
8001@implementation KBRSigListJSONRequestParams
8002
8003- (instancetype)initWithParams:(NSArray *)params {
8004  if ((self = [super initWithParams:params])) {
8005    self.sessionID = [params[0][@"sessionID"] integerValue];
8006    self.arg = [MTLJSONAdapter modelOfClass:KBRSigListArgs.class fromJSONDictionary:params[0][@"arg"] error:nil];
8007  }
8008  return self;
8009}
8010
8011+ (instancetype)params {
8012  KBRSigListJSONRequestParams *p = [[self alloc] init];
8013  // Add default values
8014  return p;
8015}
8016@end
8017
8018@implementation KBRCloseRequestParams
8019
8020- (instancetype)initWithParams:(NSArray *)params {
8021  if ((self = [super initWithParams:params])) {
8022    self.sessionID = [params[0][@"sessionID"] integerValue];
8023    self.s = [MTLJSONAdapter modelOfClass:KBRStream.class fromJSONDictionary:params[0][@"s"] error:nil];
8024  }
8025  return self;
8026}
8027
8028+ (instancetype)params {
8029  KBRCloseRequestParams *p = [[self alloc] init];
8030  // Add default values
8031  return p;
8032}
8033@end
8034
8035@implementation KBRReadRequestParams
8036
8037- (instancetype)initWithParams:(NSArray *)params {
8038  if ((self = [super initWithParams:params])) {
8039    self.sessionID = [params[0][@"sessionID"] integerValue];
8040    self.s = [MTLJSONAdapter modelOfClass:KBRStream.class fromJSONDictionary:params[0][@"s"] error:nil];
8041    self.sz = [params[0][@"sz"] integerValue];
8042  }
8043  return self;
8044}
8045
8046+ (instancetype)params {
8047  KBRReadRequestParams *p = [[self alloc] init];
8048  // Add default values
8049  return p;
8050}
8051@end
8052
8053@implementation KBRResetRequestParams
8054
8055- (instancetype)initWithParams:(NSArray *)params {
8056  if ((self = [super initWithParams:params])) {
8057    self.sessionID = [params[0][@"sessionID"] integerValue];
8058    self.s = [MTLJSONAdapter modelOfClass:KBRStream.class fromJSONDictionary:params[0][@"s"] error:nil];
8059  }
8060  return self;
8061}
8062
8063+ (instancetype)params {
8064  KBRResetRequestParams *p = [[self alloc] init];
8065  // Add default values
8066  return p;
8067}
8068@end
8069
8070@implementation KBRWriteRequestParams
8071
8072- (instancetype)initWithParams:(NSArray *)params {
8073  if ((self = [super initWithParams:params])) {
8074    self.sessionID = [params[0][@"sessionID"] integerValue];
8075    self.s = [MTLJSONAdapter modelOfClass:KBRStream.class fromJSONDictionary:params[0][@"s"] error:nil];
8076    self.buf = params[0][@"buf"];
8077  }
8078  return self;
8079}
8080
8081+ (instancetype)params {
8082  KBRWriteRequestParams *p = [[self alloc] init];
8083  // Add default values
8084  return p;
8085}
8086@end
8087
8088@implementation KBRTestRequestParams
8089
8090- (instancetype)initWithParams:(NSArray *)params {
8091  if ((self = [super initWithParams:params])) {
8092    self.sessionID = [params[0][@"sessionID"] integerValue];
8093    self.name = params[0][@"name"];
8094  }
8095  return self;
8096}
8097
8098+ (instancetype)params {
8099  KBRTestRequestParams *p = [[self alloc] init];
8100  // Add default values
8101  return p;
8102}
8103@end
8104
8105@implementation KBRTestCallbackRequestParams
8106
8107- (instancetype)initWithParams:(NSArray *)params {
8108  if ((self = [super initWithParams:params])) {
8109    self.sessionID = [params[0][@"sessionID"] integerValue];
8110    self.name = params[0][@"name"];
8111  }
8112  return self;
8113}
8114
8115+ (instancetype)params {
8116  KBRTestCallbackRequestParams *p = [[self alloc] init];
8117  // Add default values
8118  return p;
8119}
8120@end
8121
8122@implementation KBRPanicRequestParams
8123
8124- (instancetype)initWithParams:(NSArray *)params {
8125  if ((self = [super initWithParams:params])) {
8126    self.message = params[0][@"message"];
8127  }
8128  return self;
8129}
8130
8131+ (instancetype)params {
8132  KBRPanicRequestParams *p = [[self alloc] init];
8133  // Add default values
8134  return p;
8135}
8136@end
8137
8138@implementation KBRCryptKeysRequestParams
8139
8140- (instancetype)initWithParams:(NSArray *)params {
8141  if ((self = [super initWithParams:params])) {
8142    self.query = [MTLJSONAdapter modelOfClass:KBRTLFQuery.class fromJSONDictionary:params[0][@"query"] error:nil];
8143  }
8144  return self;
8145}
8146
8147+ (instancetype)params {
8148  KBRCryptKeysRequestParams *p = [[self alloc] init];
8149  // Add default values
8150  return p;
8151}
8152@end
8153
8154@implementation KBRPublicCanonicalTLFNameAndIDRequestParams
8155
8156- (instancetype)initWithParams:(NSArray *)params {
8157  if ((self = [super initWithParams:params])) {
8158    self.query = [MTLJSONAdapter modelOfClass:KBRTLFQuery.class fromJSONDictionary:params[0][@"query"] error:nil];
8159  }
8160  return self;
8161}
8162
8163+ (instancetype)params {
8164  KBRPublicCanonicalTLFNameAndIDRequestParams *p = [[self alloc] init];
8165  // Add default values
8166  return p;
8167}
8168@end
8169
8170@implementation KBRCompleteAndCanonicalizePrivateTlfNameRequestParams
8171
8172- (instancetype)initWithParams:(NSArray *)params {
8173  if ((self = [super initWithParams:params])) {
8174    self.query = [MTLJSONAdapter modelOfClass:KBRTLFQuery.class fromJSONDictionary:params[0][@"query"] error:nil];
8175  }
8176  return self;
8177}
8178
8179+ (instancetype)params {
8180  KBRCompleteAndCanonicalizePrivateTlfNameRequestParams *p = [[self alloc] init];
8181  // Add default values
8182  return p;
8183}
8184@end
8185
8186@implementation KBRGetTLFCryptKeysRequestParams
8187
8188- (instancetype)initWithParams:(NSArray *)params {
8189  if ((self = [super initWithParams:params])) {
8190    self.query = [MTLJSONAdapter modelOfClass:KBRTLFQuery.class fromJSONDictionary:params[0][@"query"] error:nil];
8191  }
8192  return self;
8193}
8194
8195+ (instancetype)params {
8196  KBRGetTLFCryptKeysRequestParams *p = [[self alloc] init];
8197  // Add default values
8198  return p;
8199}
8200@end
8201
8202@implementation KBRGetPublicCanonicalTLFNameAndIDRequestParams
8203
8204- (instancetype)initWithParams:(NSArray *)params {
8205  if ((self = [super initWithParams:params])) {
8206    self.query = [MTLJSONAdapter modelOfClass:KBRTLFQuery.class fromJSONDictionary:params[0][@"query"] error:nil];
8207  }
8208  return self;
8209}
8210
8211+ (instancetype)params {
8212  KBRGetPublicCanonicalTLFNameAndIDRequestParams *p = [[self alloc] init];
8213  // Add default values
8214  return p;
8215}
8216@end
8217
8218@implementation KBRTrackRequestParams
8219
8220- (instancetype)initWithParams:(NSArray *)params {
8221  if ((self = [super initWithParams:params])) {
8222    self.sessionID = [params[0][@"sessionID"] integerValue];
8223    self.userAssertion = params[0][@"userAssertion"];
8224    self.options = [MTLJSONAdapter modelOfClass:KBRTrackOptions.class fromJSONDictionary:params[0][@"options"] error:nil];
8225    self.forceRemoteCheck = [params[0][@"forceRemoteCheck"] boolValue];
8226  }
8227  return self;
8228}
8229
8230+ (instancetype)params {
8231  KBRTrackRequestParams *p = [[self alloc] init];
8232  // Add default values
8233  return p;
8234}
8235@end
8236
8237@implementation KBRTrackWithTokenRequestParams
8238
8239- (instancetype)initWithParams:(NSArray *)params {
8240  if ((self = [super initWithParams:params])) {
8241    self.sessionID = [params[0][@"sessionID"] integerValue];
8242    self.trackToken = params[0][@"trackToken"];
8243    self.options = [MTLJSONAdapter modelOfClass:KBRTrackOptions.class fromJSONDictionary:params[0][@"options"] error:nil];
8244  }
8245  return self;
8246}
8247
8248+ (instancetype)params {
8249  KBRTrackWithTokenRequestParams *p = [[self alloc] init];
8250  // Add default values
8251  return p;
8252}
8253@end
8254
8255@implementation KBRDismissWithTokenRequestParams
8256
8257- (instancetype)initWithParams:(NSArray *)params {
8258  if ((self = [super initWithParams:params])) {
8259    self.sessionID = [params[0][@"sessionID"] integerValue];
8260    self.trackToken = params[0][@"trackToken"];
8261  }
8262  return self;
8263}
8264
8265+ (instancetype)params {
8266  KBRDismissWithTokenRequestParams *p = [[self alloc] init];
8267  // Add default values
8268  return p;
8269}
8270@end
8271
8272@implementation KBRUntrackRequestParams
8273
8274- (instancetype)initWithParams:(NSArray *)params {
8275  if ((self = [super initWithParams:params])) {
8276    self.sessionID = [params[0][@"sessionID"] integerValue];
8277    self.username = params[0][@"username"];
8278  }
8279  return self;
8280}
8281
8282+ (instancetype)params {
8283  KBRUntrackRequestParams *p = [[self alloc] init];
8284  // Add default values
8285  return p;
8286}
8287@end
8288
8289@implementation KBRCheckTrackingRequestParams
8290
8291- (instancetype)initWithParams:(NSArray *)params {
8292  if ((self = [super initWithParams:params])) {
8293    self.sessionID = [params[0][@"sessionID"] integerValue];
8294  }
8295  return self;
8296}
8297
8298+ (instancetype)params {
8299  KBRCheckTrackingRequestParams *p = [[self alloc] init];
8300  // Add default values
8301  return p;
8302}
8303@end
8304
8305@implementation KBRFakeTrackingChangedRequestParams
8306
8307- (instancetype)initWithParams:(NSArray *)params {
8308  if ((self = [super initWithParams:params])) {
8309    self.sessionID = [params[0][@"sessionID"] integerValue];
8310    self.username = params[0][@"username"];
8311  }
8312  return self;
8313}
8314
8315+ (instancetype)params {
8316  KBRFakeTrackingChangedRequestParams *p = [[self alloc] init];
8317  // Add default values
8318  return p;
8319}
8320@end
8321
8322@implementation KBRPromptYesNoRequestParams
8323
8324- (instancetype)initWithParams:(NSArray *)params {
8325  if ((self = [super initWithParams:params])) {
8326    self.sessionID = [params[0][@"sessionID"] integerValue];
8327    self.text = [MTLJSONAdapter modelOfClass:KBRText.class fromJSONDictionary:params[0][@"text"] error:nil];
8328    self.promptDefault = [params[0][@"promptDefault"] integerValue];
8329  }
8330  return self;
8331}
8332
8333+ (instancetype)params {
8334  KBRPromptYesNoRequestParams *p = [[self alloc] init];
8335  // Add default values
8336  return p;
8337}
8338@end
8339
8340@implementation KBRListTrackersRequestParams
8341
8342- (instancetype)initWithParams:(NSArray *)params {
8343  if ((self = [super initWithParams:params])) {
8344    self.sessionID = [params[0][@"sessionID"] integerValue];
8345    self.uid = params[0][@"uid"];
8346  }
8347  return self;
8348}
8349
8350+ (instancetype)params {
8351  KBRListTrackersRequestParams *p = [[self alloc] init];
8352  // Add default values
8353  return p;
8354}
8355@end
8356
8357@implementation KBRListTrackersByNameRequestParams
8358
8359- (instancetype)initWithParams:(NSArray *)params {
8360  if ((self = [super initWithParams:params])) {
8361    self.sessionID = [params[0][@"sessionID"] integerValue];
8362    self.username = params[0][@"username"];
8363  }
8364  return self;
8365}
8366
8367+ (instancetype)params {
8368  KBRListTrackersByNameRequestParams *p = [[self alloc] init];
8369  // Add default values
8370  return p;
8371}
8372@end
8373
8374@implementation KBRListTrackersSelfRequestParams
8375
8376- (instancetype)initWithParams:(NSArray *)params {
8377  if ((self = [super initWithParams:params])) {
8378    self.sessionID = [params[0][@"sessionID"] integerValue];
8379  }
8380  return self;
8381}
8382
8383+ (instancetype)params {
8384  KBRListTrackersSelfRequestParams *p = [[self alloc] init];
8385  // Add default values
8386  return p;
8387}
8388@end
8389
8390@implementation KBRLoadUncheckedUserSummariesRequestParams
8391
8392- (instancetype)initWithParams:(NSArray *)params {
8393  if ((self = [super initWithParams:params])) {
8394    self.sessionID = [params[0][@"sessionID"] integerValue];
8395    self.uids = KBRValidateArray(params[0][@"uids"], NSString.class);
8396  }
8397  return self;
8398}
8399
8400+ (instancetype)params {
8401  KBRLoadUncheckedUserSummariesRequestParams *p = [[self alloc] init];
8402  // Add default values
8403  return p;
8404}
8405@end
8406
8407@implementation KBRLoadUserRequestParams
8408
8409- (instancetype)initWithParams:(NSArray *)params {
8410  if ((self = [super initWithParams:params])) {
8411    self.sessionID = [params[0][@"sessionID"] integerValue];
8412    self.uid = params[0][@"uid"];
8413  }
8414  return self;
8415}
8416
8417+ (instancetype)params {
8418  KBRLoadUserRequestParams *p = [[self alloc] init];
8419  // Add default values
8420  return p;
8421}
8422@end
8423
8424@implementation KBRLoadUserByNameRequestParams
8425
8426- (instancetype)initWithParams:(NSArray *)params {
8427  if ((self = [super initWithParams:params])) {
8428    self.sessionID = [params[0][@"sessionID"] integerValue];
8429    self.username = params[0][@"username"];
8430  }
8431  return self;
8432}
8433
8434+ (instancetype)params {
8435  KBRLoadUserByNameRequestParams *p = [[self alloc] init];
8436  // Add default values
8437  return p;
8438}
8439@end
8440
8441@implementation KBRLoadUserPlusKeysRequestParams
8442
8443- (instancetype)initWithParams:(NSArray *)params {
8444  if ((self = [super initWithParams:params])) {
8445    self.sessionID = [params[0][@"sessionID"] integerValue];
8446    self.uid = params[0][@"uid"];
8447  }
8448  return self;
8449}
8450
8451+ (instancetype)params {
8452  KBRLoadUserPlusKeysRequestParams *p = [[self alloc] init];
8453  // Add default values
8454  return p;
8455}
8456@end
8457
8458@implementation KBRLoadPublicKeysRequestParams
8459
8460- (instancetype)initWithParams:(NSArray *)params {
8461  if ((self = [super initWithParams:params])) {
8462    self.sessionID = [params[0][@"sessionID"] integerValue];
8463    self.uid = params[0][@"uid"];
8464  }
8465  return self;
8466}
8467
8468+ (instancetype)params {
8469  KBRLoadPublicKeysRequestParams *p = [[self alloc] init];
8470  // Add default values
8471  return p;
8472}
8473@end
8474
8475@implementation KBRLoadMyPublicKeysRequestParams
8476
8477- (instancetype)initWithParams:(NSArray *)params {
8478  if ((self = [super initWithParams:params])) {
8479    self.sessionID = [params[0][@"sessionID"] integerValue];
8480  }
8481  return self;
8482}
8483
8484+ (instancetype)params {
8485  KBRLoadMyPublicKeysRequestParams *p = [[self alloc] init];
8486  // Add default values
8487  return p;
8488}
8489@end
8490
8491@implementation KBRLoadMySettingsRequestParams
8492
8493- (instancetype)initWithParams:(NSArray *)params {
8494  if ((self = [super initWithParams:params])) {
8495    self.sessionID = [params[0][@"sessionID"] integerValue];
8496  }
8497  return self;
8498}
8499
8500+ (instancetype)params {
8501  KBRLoadMySettingsRequestParams *p = [[self alloc] init];
8502  // Add default values
8503  return p;
8504}
8505@end
8506
8507@implementation KBRListTrackingRequestParams
8508
8509- (instancetype)initWithParams:(NSArray *)params {
8510  if ((self = [super initWithParams:params])) {
8511    self.sessionID = [params[0][@"sessionID"] integerValue];
8512    self.filter = params[0][@"filter"];
8513    self.assertion = params[0][@"assertion"];
8514  }
8515  return self;
8516}
8517
8518+ (instancetype)params {
8519  KBRListTrackingRequestParams *p = [[self alloc] init];
8520  // Add default values
8521  return p;
8522}
8523@end
8524
8525@implementation KBRListTrackingJSONRequestParams
8526
8527- (instancetype)initWithParams:(NSArray *)params {
8528  if ((self = [super initWithParams:params])) {
8529    self.sessionID = [params[0][@"sessionID"] integerValue];
8530    self.filter = params[0][@"filter"];
8531    self.verbose = [params[0][@"verbose"] boolValue];
8532    self.assertion = params[0][@"assertion"];
8533  }
8534  return self;
8535}
8536
8537+ (instancetype)params {
8538  KBRListTrackingJSONRequestParams *p = [[self alloc] init];
8539  // Add default values
8540  return p;
8541}
8542@end
8543
8544@implementation KBRSearchRequestParams
8545
8546- (instancetype)initWithParams:(NSArray *)params {
8547  if ((self = [super initWithParams:params])) {
8548    self.sessionID = [params[0][@"sessionID"] integerValue];
8549    self.query = params[0][@"query"];
8550  }
8551  return self;
8552}
8553
8554+ (instancetype)params {
8555  KBRSearchRequestParams *p = [[self alloc] init];
8556  // Add default values
8557  return p;
8558}
8559@end
8560
8561@implementation KBRLoadAllPublicKeysUnverifiedRequestParams
8562
8563- (instancetype)initWithParams:(NSArray *)params {
8564  if ((self = [super initWithParams:params])) {
8565    self.sessionID = [params[0][@"sessionID"] integerValue];
8566    self.uid = params[0][@"uid"];
8567  }
8568  return self;
8569}
8570
8571+ (instancetype)params {
8572  KBRLoadAllPublicKeysUnverifiedRequestParams *p = [[self alloc] init];
8573  // Add default values
8574  return p;
8575}
8576@end
8577
8578@implementation KBRListTrackers2RequestParams
8579
8580- (instancetype)initWithParams:(NSArray *)params {
8581  if ((self = [super initWithParams:params])) {
8582    self.sessionID = [params[0][@"sessionID"] integerValue];
8583    self.assertion = params[0][@"assertion"];
8584    self.reverse = [params[0][@"reverse"] boolValue];
8585  }
8586  return self;
8587}
8588
8589+ (instancetype)params {
8590  KBRListTrackers2RequestParams *p = [[self alloc] init];
8591  // Add default values
8592  return p;
8593}
8594@end
8595@implementation KBRStringKVPair
8596@end
8597
8598@implementation KBRStatus
8599+ (NSValueTransformer *)fieldsJSONTransformer { return [MTLJSONAdapter arrayTransformerWithModelClass:KBRStringKVPair.class]; }
8600@end
8601
8602@implementation KBRText
8603@end
8604
8605@implementation KBRPGPIdentity
8606@end
8607
8608@implementation KBRPublicKey
8609+ (NSValueTransformer *)PGPIdentitiesJSONTransformer { return [MTLJSONAdapter arrayTransformerWithModelClass:KBRPGPIdentity.class]; }
8610@end
8611
8612@implementation KBRKeybaseTime
8613@end
8614
8615@implementation KBRRevokedKey
8616@end
8617
8618@implementation KBRUser
8619@end
8620
8621@implementation KBRDevice
8622@end
8623
8624@implementation KBRStream
8625@end
8626
8627@implementation KBRUserVersionVector
8628@end
8629
8630@implementation KBRUserPlusKeys
8631+ (NSValueTransformer *)deviceKeysJSONTransformer { return [MTLJSONAdapter arrayTransformerWithModelClass:KBRPublicKey.class]; }
8632+ (NSValueTransformer *)revokedDeviceKeysJSONTransformer { return [MTLJSONAdapter arrayTransformerWithModelClass:KBRRevokedKey.class]; }
8633@end
8634
8635@implementation KBRRemoteTrack
8636@end
8637
8638@implementation KBRUserPlusAllKeys
8639+ (NSValueTransformer *)pgpKeysJSONTransformer { return [MTLJSONAdapter arrayTransformerWithModelClass:KBRPublicKey.class]; }
8640+ (NSValueTransformer *)remoteTracksJSONTransformer { return [MTLJSONAdapter arrayTransformerWithModelClass:KBRRemoteTrack.class]; }
8641@end
8642
8643@implementation KBRSocialAssertion
8644@end
8645
8646@implementation KBRUserResolution
8647@end
8648
8649@implementation KBRTrackDiff
8650@end
8651
8652@implementation KBRTrackSummary
8653@end
8654
8655@implementation KBRTrackOptions
8656@end
8657
8658@implementation KBRIdentifyReason
8659@end
8660
8661@implementation KBRIdentifyOutcome
8662+ (NSValueTransformer *)revokedJSONTransformer { return [MTLJSONAdapter arrayTransformerWithModelClass:KBRTrackDiff.class]; }
8663@end
8664
8665@implementation KBRIdentifyRes
8666+ (NSValueTransformer *)publicKeysJSONTransformer { return [MTLJSONAdapter arrayTransformerWithModelClass:KBRPublicKey.class]; }
8667@end
8668
8669@implementation KBRRemoteProof
8670@end
8671
8672@implementation KBRProofResult
8673@end
8674
8675@implementation KBRIdentifyRow
8676@end
8677
8678@implementation KBRIdentifyKey
8679@end
8680
8681@implementation KBRCryptocurrency
8682@end
8683
8684@implementation KBRRevokedProof
8685@end
8686
8687@implementation KBRIdentity
8688+ (NSValueTransformer *)proofsJSONTransformer { return [MTLJSONAdapter arrayTransformerWithModelClass:KBRIdentifyRow.class]; }
8689+ (NSValueTransformer *)cryptocurrencyJSONTransformer { return [MTLJSONAdapter arrayTransformerWithModelClass:KBRCryptocurrency.class]; }
8690+ (NSValueTransformer *)revokedJSONTransformer { return [MTLJSONAdapter arrayTransformerWithModelClass:KBRTrackDiff.class]; }
8691+ (NSValueTransformer *)revokedDetailsJSONTransformer { return [MTLJSONAdapter arrayTransformerWithModelClass:KBRRevokedProof.class]; }
8692@end
8693
8694@implementation KBRSigHint
8695@end
8696
8697@implementation KBRCheckResult
8698@end
8699
8700@implementation KBRLinkCheckResult
8701@end
8702
8703@implementation KBRUserCard
8704@end
8705
8706@implementation KBRConfirmResult
8707@end
8708
8709@implementation KBRDismissReason
8710@end
8711
8712@implementation KBRSaltpackSender
8713@end
8714
8715@implementation KBRHasServerKeysRes
8716@end
8717
8718@implementation KBRAPIRes
8719@end
8720
8721@implementation KBRBlockIdCombo
8722@end
8723
8724@implementation KBRChallengeInfo
8725@end
8726
8727@implementation KBRGetBlockRes
8728@end
8729
8730@implementation KBRBlockReference
8731@end
8732
8733@implementation KBRBlockReferenceCount
8734@end
8735
8736@implementation KBRDowngradeReferenceRes
8737+ (NSValueTransformer *)completedJSONTransformer { return [MTLJSONAdapter arrayTransformerWithModelClass:KBRBlockReferenceCount.class]; }
8738@end
8739
8740@implementation KBRGetCurrentStatusRes
8741@end
8742
8743@implementation KBRSessionStatus
8744@end
8745
8746@implementation KBRClientDetails
8747@end
8748
8749@implementation KBRPlatformInfo
8750@end
8751
8752@implementation KBRLoadDeviceErr
8753@end
8754
8755@implementation KBRExtendedStatus
8756+ (NSValueTransformer *)ClientsJSONTransformer { return [MTLJSONAdapter arrayTransformerWithModelClass:KBRClientDetails.class]; }
8757@end
8758
8759@implementation KBRConfig
8760@end
8761
8762@implementation KBRConfigValue
8763@end
8764
8765@implementation KBROutOfDateInfo
8766@end
8767
8768@implementation KBRED25519SignatureInfo
8769@end
8770
8771@implementation KBRCiphertextBundle
8772@end
8773
8774@implementation KBRUnboxAnyRes
8775@end
8776
8777@implementation KBRRegisterAddressRes
8778@end
8779
8780@implementation KBRFirstStepResult
8781@end
8782
8783@implementation KBRDeviceDetail
8784@end
8785
8786@implementation KBRFolder
8787@end
8788
8789@implementation KBRFavoritesResult
8790+ (NSValueTransformer *)favoriteFoldersJSONTransformer { return [MTLJSONAdapter arrayTransformerWithModelClass:KBRFolder.class]; }
8791+ (NSValueTransformer *)ignoredFoldersJSONTransformer { return [MTLJSONAdapter arrayTransformerWithModelClass:KBRFolder.class]; }
8792+ (NSValueTransformer *)foldersNewJSONTransformer { return [MTLJSONAdapter arrayTransformerWithModelClass:KBRFolder.class]; }
8793@end
8794
8795@implementation KBRFile
8796@end
8797
8798@implementation KBRListResult
8799+ (NSValueTransformer *)filesJSONTransformer { return [MTLJSONAdapter arrayTransformerWithModelClass:KBRFile.class]; }
8800@end
8801
8802@implementation KBRGPGKey
8803+ (NSValueTransformer *)identitiesJSONTransformer { return [MTLJSONAdapter arrayTransformerWithModelClass:KBRPGPIdentity.class]; }
8804@end
8805
8806@implementation KBRSelectKeyRes
8807@end
8808
8809@implementation KBRIdentifyProofBreak
8810@end
8811
8812@implementation KBRIdentifyTrackBreaks
8813+ (NSValueTransformer *)keysJSONTransformer { return [MTLJSONAdapter arrayTransformerWithModelClass:KBRIdentifyKey.class]; }
8814+ (NSValueTransformer *)proofsJSONTransformer { return [MTLJSONAdapter arrayTransformerWithModelClass:KBRIdentifyProofBreak.class]; }
8815@end
8816
8817@implementation KBRIdentify2Res
8818@end
8819
8820@implementation KBRServiceStatus
8821@end
8822
8823@implementation KBRServicesStatus
8824+ (NSValueTransformer *)serviceJSONTransformer { return [MTLJSONAdapter arrayTransformerWithModelClass:KBRServiceStatus.class]; }
8825+ (NSValueTransformer *)kbfsJSONTransformer { return [MTLJSONAdapter arrayTransformerWithModelClass:KBRServiceStatus.class]; }
8826+ (NSValueTransformer *)updaterJSONTransformer { return [MTLJSONAdapter arrayTransformerWithModelClass:KBRServiceStatus.class]; }
8827@end
8828
8829@implementation KBRFuseMountInfo
8830@end
8831
8832@implementation KBRFuseStatus
8833+ (NSValueTransformer *)mountInfosJSONTransformer { return [MTLJSONAdapter arrayTransformerWithModelClass:KBRFuseMountInfo.class]; }
8834@end
8835
8836@implementation KBRComponentResult
8837@end
8838
8839@implementation KBRInstallResult
8840+ (NSValueTransformer *)componentResultsJSONTransformer { return [MTLJSONAdapter arrayTransformerWithModelClass:KBRComponentResult.class]; }
8841@end
8842
8843@implementation KBRUninstallResult
8844+ (NSValueTransformer *)componentResultsJSONTransformer { return [MTLJSONAdapter arrayTransformerWithModelClass:KBRComponentResult.class]; }
8845@end
8846
8847@implementation KBRFSNotification
8848@end
8849
8850@implementation KBRFSEditListRequest
8851@end
8852
8853@implementation KBRFSSyncStatusRequest
8854@end
8855
8856@implementation KBRFSPathSyncStatus
8857@end
8858
8859@implementation KBRFSSyncStatus
8860+ (NSValueTransformer *)pathStatusesJSONTransformer { return [MTLJSONAdapter arrayTransformerWithModelClass:KBRFSPathSyncStatus.class]; }
8861@end
8862
8863@implementation KBRPassphraseStream
8864@end
8865
8866@implementation KBRHello2Res
8867@end
8868
8869@implementation KBRConfiguredAccount
8870@end
8871
8872@implementation KBRKeyHalf
8873@end
8874
8875@implementation KBRMDBlock
8876@end
8877
8878@implementation KBRKeyBundle
8879@end
8880
8881@implementation KBRMetadataResponse
8882+ (NSValueTransformer *)mdBlocksJSONTransformer { return [MTLJSONAdapter arrayTransformerWithModelClass:KBRMDBlock.class]; }
8883@end
8884
8885@implementation KBRMerkleRoot
8886@end
8887
8888@implementation KBRPingResponse
8889@end
8890
8891@implementation KBRKeyBundleResponse
8892@end
8893
8894@implementation KBRBadgeState
8895+ (NSValueTransformer *)conversationsJSONTransformer { return [MTLJSONAdapter arrayTransformerWithModelClass:KBRBadgeConversationInfo.class]; }
8896@end
8897
8898@implementation KBRBadgeConversationInfo
8899@end
8900
8901@implementation KBRNotificationChannels
8902@end
8903
8904@implementation KBRFeature
8905@end
8906
8907@implementation KBRGUIEntryFeatures
8908@end
8909
8910@implementation KBRGUIEntryArg
8911@end
8912
8913@implementation KBRGetPassphraseRes
8914@end
8915
8916@implementation KBRPGPSignOptions
8917@end
8918
8919@implementation KBRPGPEncryptOptions
8920@end
8921
8922@implementation KBRPGPSigVerification
8923@end
8924
8925@implementation KBRPGPDecryptOptions
8926@end
8927
8928@implementation KBRPGPVerifyOptions
8929@end
8930
8931@implementation KBRKeyInfo
8932@end
8933
8934@implementation KBRPGPQuery
8935@end
8936
8937@implementation KBRPGPCreateUids
8938+ (NSValueTransformer *)idsJSONTransformer { return [MTLJSONAdapter arrayTransformerWithModelClass:KBRPGPIdentity.class]; }
8939@end
8940
8941@implementation KBRPGPPurgeRes
8942@end
8943
8944@implementation KBRFileDescriptor
8945@end
8946
8947@implementation KBRProcess
8948+ (NSValueTransformer *)fileDescriptorsJSONTransformer { return [MTLJSONAdapter arrayTransformerWithModelClass:KBRFileDescriptor.class]; }
8949@end
8950
8951@implementation KBRCheckProofStatus
8952@end
8953
8954@implementation KBRStartProofResult
8955@end
8956
8957@implementation KBRSecretResponse
8958@end
8959
8960@implementation KBRVerifySessionRes
8961@end
8962
8963@implementation KBRReachability
8964@end
8965
8966@implementation KBRTLF
8967@end
8968
8969@implementation KBRProblemTLF
8970+ (NSValueTransformer *)solution_kidsJSONTransformer { return [MTLJSONAdapter arrayTransformerWithModelClass:NSString.class]; }
8971@end
8972
8973@implementation KBRProblemSet
8974+ (NSValueTransformer *)tlfsJSONTransformer { return [MTLJSONAdapter arrayTransformerWithModelClass:KBRProblemTLF.class]; }
8975@end
8976
8977@implementation KBRProblemSetDevices
8978+ (NSValueTransformer *)devicesJSONTransformer { return [MTLJSONAdapter arrayTransformerWithModelClass:KBRDevice.class]; }
8979@end
8980
8981@implementation KBRRevokeWarning
8982+ (NSValueTransformer *)endangeredTLFsJSONTransformer { return [MTLJSONAdapter arrayTransformerWithModelClass:KBRTLF.class]; }
8983@end
8984
8985@implementation KBRRekeyEvent
8986@end
8987
8988@implementation KBRSaltpackEncryptOptions
8989@end
8990
8991@implementation KBRSaltpackDecryptOptions
8992@end
8993
8994@implementation KBRSaltpackSignOptions
8995@end
8996
8997@implementation KBRSaltpackVerifyOptions
8998@end
8999
9000@implementation KBRSaltpackEncryptedMessageInfo
9001+ (NSValueTransformer *)devicesJSONTransformer { return [MTLJSONAdapter arrayTransformerWithModelClass:KBRDevice.class]; }
9002@end
9003
9004@implementation KBRSecretEntryArg
9005@end
9006
9007@implementation KBRSecretEntryRes
9008@end
9009
9010@implementation KBRSecretKeys
9011@end
9012
9013@implementation KBRSession
9014@end
9015
9016@implementation KBRSignupRes
9017@end
9018
9019@implementation KBRSig
9020@end
9021
9022@implementation KBRSigTypes
9023@end
9024
9025@implementation KBRSigListArgs
9026@end
9027
9028@implementation KBRTest
9029@end
9030
9031@implementation KBRCryptKey
9032@end
9033
9034@implementation KBRTLFBreak
9035+ (NSValueTransformer *)breaksJSONTransformer { return [MTLJSONAdapter arrayTransformerWithModelClass:KBRTLFIdentifyFailure.class]; }
9036@end
9037
9038@implementation KBRTLFIdentifyFailure
9039@end
9040
9041@implementation KBRCanonicalTLFNameAndIDWithBreaks
9042@end
9043
9044@implementation KBRGetTLFCryptKeysRes
9045+ (NSValueTransformer *)CryptKeysJSONTransformer { return [MTLJSONAdapter arrayTransformerWithModelClass:KBRCryptKey.class]; }
9046@end
9047
9048@implementation KBRTLFQuery
9049@end
9050
9051@implementation KBRTracker
9052@end
9053
9054@implementation KBRTrackProof
9055@end
9056
9057@implementation KBRWebProof
9058@end
9059
9060@implementation KBRProofs
9061+ (NSValueTransformer *)socialJSONTransformer { return [MTLJSONAdapter arrayTransformerWithModelClass:KBRTrackProof.class]; }
9062+ (NSValueTransformer *)webJSONTransformer { return [MTLJSONAdapter arrayTransformerWithModelClass:KBRWebProof.class]; }
9063+ (NSValueTransformer *)publicKeysJSONTransformer { return [MTLJSONAdapter arrayTransformerWithModelClass:KBRPublicKey.class]; }
9064@end
9065
9066@implementation KBRUserSummary
9067@end
9068
9069@implementation KBREmail
9070@end
9071
9072@implementation KBRUserSettings
9073+ (NSValueTransformer *)emailsJSONTransformer { return [MTLJSONAdapter arrayTransformerWithModelClass:KBREmail.class]; }
9074@end
9075
9076@implementation KBRSearchComponent
9077@end
9078
9079@implementation KBRSearchResult
9080+ (NSValueTransformer *)componentsJSONTransformer { return [MTLJSONAdapter arrayTransformerWithModelClass:KBRSearchComponent.class]; }
9081@end
9082
9083@implementation KBRUserSummary2
9084@end
9085
9086@implementation KBRUserSummary2Set
9087+ (NSValueTransformer *)usersJSONTransformer { return [MTLJSONAdapter arrayTransformerWithModelClass:KBRUserSummary2.class]; }
9088@end
9089