@producerflow/producerflowapi 0.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,843 @@
1
+ import type { GenEnum, GenFile, GenMessage, GenService } from "@bufbuild/protobuf/codegenv2";
2
+ import type { Timestamp } from "@bufbuild/protobuf/wkt";
3
+ import type { Message } from "@bufbuild/protobuf";
4
+ /**
5
+ * Describes the file producerflow/appointment/v1/appointment.proto.
6
+ */
7
+ export declare const file_producerflow_appointment_v1_appointment: GenFile;
8
+ /**
9
+ * Request to create a new appointment.
10
+ *
11
+ * @generated from message producerflow.appointment.v1.RequestAppointmentRequest
12
+ */
13
+ export type RequestAppointmentRequest = Message<"producerflow.appointment.v1.RequestAppointmentRequest"> & {
14
+ /**
15
+ * Required. The ID of the license to appoint.
16
+ *
17
+ * @generated from field: string license_id = 1;
18
+ */
19
+ licenseId: string;
20
+ /**
21
+ * Required. The ID of the carrier to appoint the license with.
22
+ *
23
+ * @generated from field: string carrier_id = 2;
24
+ */
25
+ carrierId: string;
26
+ };
27
+ /**
28
+ * Describes the message producerflow.appointment.v1.RequestAppointmentRequest.
29
+ * Use `create(RequestAppointmentRequestSchema)` to create a new message.
30
+ */
31
+ export declare const RequestAppointmentRequestSchema: GenMessage<RequestAppointmentRequest>;
32
+ /**
33
+ * @generated from message producerflow.appointment.v1.RequestAppointmentResponse
34
+ */
35
+ export type RequestAppointmentResponse = Message<"producerflow.appointment.v1.RequestAppointmentResponse"> & {
36
+ /**
37
+ * The ID of the created appointment.
38
+ *
39
+ * @generated from field: string appointment_id = 1;
40
+ */
41
+ appointmentId: string;
42
+ /**
43
+ * Processing status of the appointment request.
44
+ *
45
+ * @generated from field: producerflow.appointment.v1.ProcessingStatus processing_status = 2;
46
+ */
47
+ processingStatus: ProcessingStatus;
48
+ /**
49
+ * If the appointment was rejected or ineligible, these reasons explain why.
50
+ *
51
+ * @generated from field: repeated string not_eligible_reasons = 3;
52
+ */
53
+ notEligibleReasons: string[];
54
+ };
55
+ /**
56
+ * Describes the message producerflow.appointment.v1.RequestAppointmentResponse.
57
+ * Use `create(RequestAppointmentResponseSchema)` to create a new message.
58
+ */
59
+ export declare const RequestAppointmentResponseSchema: GenMessage<RequestAppointmentResponse>;
60
+ /**
61
+ * Request to retrieve an appointment by ID.
62
+ *
63
+ * @generated from message producerflow.appointment.v1.GetAppointmentRequest
64
+ */
65
+ export type GetAppointmentRequest = Message<"producerflow.appointment.v1.GetAppointmentRequest"> & {
66
+ /**
67
+ * Required. The ID of the appointment to retrieve.
68
+ *
69
+ * @generated from field: string appointment_id = 1;
70
+ */
71
+ appointmentId: string;
72
+ };
73
+ /**
74
+ * Describes the message producerflow.appointment.v1.GetAppointmentRequest.
75
+ * Use `create(GetAppointmentRequestSchema)` to create a new message.
76
+ */
77
+ export declare const GetAppointmentRequestSchema: GenMessage<GetAppointmentRequest>;
78
+ /**
79
+ * @generated from message producerflow.appointment.v1.GetAppointmentResponse
80
+ */
81
+ export type GetAppointmentResponse = Message<"producerflow.appointment.v1.GetAppointmentResponse"> & {
82
+ /**
83
+ * The appointment details.
84
+ *
85
+ * @generated from field: producerflow.appointment.v1.Appointment appointment = 1;
86
+ */
87
+ appointment?: Appointment;
88
+ };
89
+ /**
90
+ * Describes the message producerflow.appointment.v1.GetAppointmentResponse.
91
+ * Use `create(GetAppointmentResponseSchema)` to create a new message.
92
+ */
93
+ export declare const GetAppointmentResponseSchema: GenMessage<GetAppointmentResponse>;
94
+ /**
95
+ * Request to list appointments, optionally filtered by processing status.
96
+ *
97
+ * @generated from message producerflow.appointment.v1.ListAppointmentsRequest
98
+ */
99
+ export type ListAppointmentsRequest = Message<"producerflow.appointment.v1.ListAppointmentsRequest"> & {
100
+ /**
101
+ * Optional. Filter results by processing status.
102
+ *
103
+ * @generated from field: repeated producerflow.appointment.v1.ProcessingStatus processing_status = 1;
104
+ */
105
+ processingStatus: ProcessingStatus[];
106
+ /**
107
+ * Optional. Filter results by license owner.
108
+ *
109
+ * @generated from oneof producerflow.appointment.v1.ListAppointmentsRequest.license_owner
110
+ */
111
+ licenseOwner: {
112
+ /**
113
+ * @generated from field: string producer_id = 2;
114
+ */
115
+ value: string;
116
+ case: "producerId";
117
+ } | {
118
+ /**
119
+ * @generated from field: string agency_id = 3;
120
+ */
121
+ value: string;
122
+ case: "agencyId";
123
+ } | {
124
+ case: undefined;
125
+ value?: undefined;
126
+ };
127
+ };
128
+ /**
129
+ * Describes the message producerflow.appointment.v1.ListAppointmentsRequest.
130
+ * Use `create(ListAppointmentsRequestSchema)` to create a new message.
131
+ */
132
+ export declare const ListAppointmentsRequestSchema: GenMessage<ListAppointmentsRequest>;
133
+ /**
134
+ * @generated from message producerflow.appointment.v1.ListAppointmentsResponse
135
+ */
136
+ export type ListAppointmentsResponse = Message<"producerflow.appointment.v1.ListAppointmentsResponse"> & {
137
+ /**
138
+ * List of appointments.
139
+ *
140
+ * @generated from field: repeated producerflow.appointment.v1.Appointment appointments = 1;
141
+ */
142
+ appointments: Appointment[];
143
+ /**
144
+ * Token for fetching the next page of results.
145
+ *
146
+ * @generated from field: string next_page_token = 2;
147
+ */
148
+ nextPageToken: string;
149
+ };
150
+ /**
151
+ * Describes the message producerflow.appointment.v1.ListAppointmentsResponse.
152
+ * Use `create(ListAppointmentsResponseSchema)` to create a new message.
153
+ */
154
+ export declare const ListAppointmentsResponseSchema: GenMessage<ListAppointmentsResponse>;
155
+ /**
156
+ * Request to terminate an appointment.
157
+ *
158
+ * @generated from message producerflow.appointment.v1.TerminateAppointmentRequest
159
+ */
160
+ export type TerminateAppointmentRequest = Message<"producerflow.appointment.v1.TerminateAppointmentRequest"> & {
161
+ /**
162
+ * ID of the appointment to terminate.
163
+ *
164
+ * @generated from field: string appointment_id = 1;
165
+ */
166
+ appointmentId: string;
167
+ /**
168
+ * Reason for termination. This must be a valid termination reason
169
+ * for the state where the license is issued. Call ListTerminationReasons
170
+ * first to get the list of valid reasons for the specific state.
171
+ *
172
+ * @generated from field: producerflow.appointment.v1.TerminationReason reason = 2;
173
+ */
174
+ reason: TerminationReason;
175
+ };
176
+ /**
177
+ * Describes the message producerflow.appointment.v1.TerminateAppointmentRequest.
178
+ * Use `create(TerminateAppointmentRequestSchema)` to create a new message.
179
+ */
180
+ export declare const TerminateAppointmentRequestSchema: GenMessage<TerminateAppointmentRequest>;
181
+ /**
182
+ * @generated from message producerflow.appointment.v1.TerminateAppointmentResponse
183
+ */
184
+ export type TerminateAppointmentResponse = Message<"producerflow.appointment.v1.TerminateAppointmentResponse"> & {
185
+ /**
186
+ * Indicates whether the termination request was successfully submitted to NIPR.
187
+ * This does not indicate that the appointment has been terminated, only that
188
+ * the request has been accepted for processing. The actual termination will
189
+ * be processed asynchronously by NIPR, and you will be notified via webhook
190
+ * when the process completes.
191
+ *
192
+ * @generated from field: bool success = 1;
193
+ */
194
+ success: boolean;
195
+ };
196
+ /**
197
+ * Describes the message producerflow.appointment.v1.TerminateAppointmentResponse.
198
+ * Use `create(TerminateAppointmentResponseSchema)` to create a new message.
199
+ */
200
+ export declare const TerminateAppointmentResponseSchema: GenMessage<TerminateAppointmentResponse>;
201
+ /**
202
+ * Request to retrieve a list of licenses that are eligible to be appointed.
203
+ *
204
+ * @generated from message producerflow.appointment.v1.ListEligibleLicensesRequest
205
+ */
206
+ export type ListEligibleLicensesRequest = Message<"producerflow.appointment.v1.ListEligibleLicensesRequest"> & {
207
+ /**
208
+ * The applicant is the producer or agency with licenses eligible to be appointed.
209
+ *
210
+ * @generated from oneof producerflow.appointment.v1.ListEligibleLicensesRequest.applicant
211
+ */
212
+ applicant: {
213
+ /**
214
+ * @generated from field: string producer_id = 1;
215
+ */
216
+ value: string;
217
+ case: "producerId";
218
+ } | {
219
+ /**
220
+ * @generated from field: string agency_id = 2;
221
+ */
222
+ value: string;
223
+ case: "agencyId";
224
+ } | {
225
+ case: undefined;
226
+ value?: undefined;
227
+ };
228
+ };
229
+ /**
230
+ * Describes the message producerflow.appointment.v1.ListEligibleLicensesRequest.
231
+ * Use `create(ListEligibleLicensesRequestSchema)` to create a new message.
232
+ */
233
+ export declare const ListEligibleLicensesRequestSchema: GenMessage<ListEligibleLicensesRequest>;
234
+ /**
235
+ * @generated from message producerflow.appointment.v1.ListEligibleLicensesResponse
236
+ */
237
+ export type ListEligibleLicensesResponse = Message<"producerflow.appointment.v1.ListEligibleLicensesResponse"> & {
238
+ /**
239
+ * List of licenses that are eligible to be appointed.
240
+ *
241
+ * @generated from field: repeated producerflow.appointment.v1.License licenses = 1;
242
+ */
243
+ licenses: License[];
244
+ };
245
+ /**
246
+ * Describes the message producerflow.appointment.v1.ListEligibleLicensesResponse.
247
+ * Use `create(ListEligibleLicensesResponseSchema)` to create a new message.
248
+ */
249
+ export declare const ListEligibleLicensesResponseSchema: GenMessage<ListEligibleLicensesResponse>;
250
+ /**
251
+ * Request to get appointment fees.
252
+ *
253
+ * @generated from message producerflow.appointment.v1.GetAppointmentFeesRequest
254
+ */
255
+ export type GetAppointmentFeesRequest = Message<"producerflow.appointment.v1.GetAppointmentFeesRequest"> & {
256
+ /**
257
+ * Required. The ID of the license to get the appointment fee for.
258
+ *
259
+ * @generated from field: string license_id = 1;
260
+ */
261
+ licenseId: string;
262
+ };
263
+ /**
264
+ * Describes the message producerflow.appointment.v1.GetAppointmentFeesRequest.
265
+ * Use `create(GetAppointmentFeesRequestSchema)` to create a new message.
266
+ */
267
+ export declare const GetAppointmentFeesRequestSchema: GenMessage<GetAppointmentFeesRequest>;
268
+ /**
269
+ * @generated from message producerflow.appointment.v1.GetAppointmentFeesResponse
270
+ */
271
+ export type GetAppointmentFeesResponse = Message<"producerflow.appointment.v1.GetAppointmentFeesResponse"> & {
272
+ /**
273
+ * Total fee for the appointment in cents.
274
+ *
275
+ * @generated from field: int64 fee_in_cents = 1;
276
+ */
277
+ feeInCents: bigint;
278
+ };
279
+ /**
280
+ * Describes the message producerflow.appointment.v1.GetAppointmentFeesResponse.
281
+ * Use `create(GetAppointmentFeesResponseSchema)` to create a new message.
282
+ */
283
+ export declare const GetAppointmentFeesResponseSchema: GenMessage<GetAppointmentFeesResponse>;
284
+ /**
285
+ * Request to get termination fees.
286
+ *
287
+ * @generated from message producerflow.appointment.v1.GetTerminationFeesRequest
288
+ */
289
+ export type GetTerminationFeesRequest = Message<"producerflow.appointment.v1.GetTerminationFeesRequest"> & {
290
+ /**
291
+ * Required. The ID of the license to get the termination fee for.
292
+ *
293
+ * @generated from field: string license_id = 1;
294
+ */
295
+ licenseId: string;
296
+ };
297
+ /**
298
+ * Describes the message producerflow.appointment.v1.GetTerminationFeesRequest.
299
+ * Use `create(GetTerminationFeesRequestSchema)` to create a new message.
300
+ */
301
+ export declare const GetTerminationFeesRequestSchema: GenMessage<GetTerminationFeesRequest>;
302
+ /**
303
+ * @generated from message producerflow.appointment.v1.GetTerminationFeesResponse
304
+ */
305
+ export type GetTerminationFeesResponse = Message<"producerflow.appointment.v1.GetTerminationFeesResponse"> & {
306
+ /**
307
+ * Total fee for the termination in cents.
308
+ *
309
+ * @generated from field: int64 fee_in_cents = 1;
310
+ */
311
+ feeInCents: bigint;
312
+ };
313
+ /**
314
+ * Describes the message producerflow.appointment.v1.GetTerminationFeesResponse.
315
+ * Use `create(GetTerminationFeesResponseSchema)` to create a new message.
316
+ */
317
+ export declare const GetTerminationFeesResponseSchema: GenMessage<GetTerminationFeesResponse>;
318
+ /**
319
+ * @generated from message producerflow.appointment.v1.GetAppointableCarriersRequest
320
+ */
321
+ export type GetAppointableCarriersRequest = Message<"producerflow.appointment.v1.GetAppointableCarriersRequest"> & {};
322
+ /**
323
+ * Describes the message producerflow.appointment.v1.GetAppointableCarriersRequest.
324
+ * Use `create(GetAppointableCarriersRequestSchema)` to create a new message.
325
+ */
326
+ export declare const GetAppointableCarriersRequestSchema: GenMessage<GetAppointableCarriersRequest>;
327
+ /**
328
+ * @generated from message producerflow.appointment.v1.GetAppointableCarriersResponse
329
+ */
330
+ export type GetAppointableCarriersResponse = Message<"producerflow.appointment.v1.GetAppointableCarriersResponse"> & {
331
+ /**
332
+ * The list of carriers that are available to be appointed.
333
+ *
334
+ * @generated from field: repeated producerflow.appointment.v1.Carrier carriers = 1;
335
+ */
336
+ carriers: Carrier[];
337
+ };
338
+ /**
339
+ * Describes the message producerflow.appointment.v1.GetAppointableCarriersResponse.
340
+ * Use `create(GetAppointableCarriersResponseSchema)` to create a new message.
341
+ */
342
+ export declare const GetAppointableCarriersResponseSchema: GenMessage<GetAppointableCarriersResponse>;
343
+ /**
344
+ * Represents a carrier that is available to be appointed.
345
+ *
346
+ * @generated from message producerflow.appointment.v1.Carrier
347
+ */
348
+ export type Carrier = Message<"producerflow.appointment.v1.Carrier"> & {
349
+ /**
350
+ * The ID of the carrier.
351
+ *
352
+ * @generated from field: string carrier_id = 1;
353
+ */
354
+ carrierId: string;
355
+ /**
356
+ * The name of the carrier.
357
+ *
358
+ * @generated from field: string name = 2;
359
+ */
360
+ name: string;
361
+ /**
362
+ * The NPN of the carrier.
363
+ *
364
+ * @generated from field: string npn = 3;
365
+ */
366
+ npn: string;
367
+ /**
368
+ * The state of the carrier.
369
+ *
370
+ * @generated from field: string fein = 4;
371
+ */
372
+ fein: string;
373
+ };
374
+ /**
375
+ * Describes the message producerflow.appointment.v1.Carrier.
376
+ * Use `create(CarrierSchema)` to create a new message.
377
+ */
378
+ export declare const CarrierSchema: GenMessage<Carrier>;
379
+ /**
380
+ * Represents an appointment for a license.
381
+ *
382
+ * @generated from message producerflow.appointment.v1.Appointment
383
+ */
384
+ export type Appointment = Message<"producerflow.appointment.v1.Appointment"> & {
385
+ /**
386
+ * Unique identifier for the appointment.
387
+ *
388
+ * @generated from field: string appointment_id = 1;
389
+ */
390
+ appointmentId: string;
391
+ /**
392
+ * Information about the license being appointed.
393
+ *
394
+ * @generated from field: producerflow.appointment.v1.License license = 2;
395
+ */
396
+ license?: License;
397
+ /**
398
+ * The license number of the license being appointed.
399
+ *
400
+ * @generated from field: string name = 3;
401
+ */
402
+ name: string;
403
+ /**
404
+ * The id of the agency that is appointed.
405
+ *
406
+ * @generated from field: string agency_id = 4;
407
+ */
408
+ agencyId: string;
409
+ /**
410
+ * The id of the producer that is appointed, if any.
411
+ *
412
+ * @generated from field: optional string producer_id = 5;
413
+ */
414
+ producerId?: string;
415
+ /**
416
+ * The name of the carrier to which the license is appointed.
417
+ *
418
+ * @generated from field: string carrier = 6;
419
+ */
420
+ carrier: string;
421
+ /**
422
+ * Type of appointment (e.g., up-front, registry).
423
+ *
424
+ * @generated from field: producerflow.appointment.v1.AppointmentType appointment_type = 7;
425
+ */
426
+ appointmentType: AppointmentType;
427
+ /**
428
+ * Processing status of the appointment (e.g., in progress, appointed).
429
+ *
430
+ * @generated from field: producerflow.appointment.v1.ProcessingStatus processing_status = 8;
431
+ */
432
+ processingStatus: ProcessingStatus;
433
+ /**
434
+ * Optional comments or notes related to the appointment.
435
+ *
436
+ * @generated from field: string comments = 9;
437
+ */
438
+ comments: string;
439
+ /**
440
+ * Timestamp of the last update to the appointment.
441
+ *
442
+ * @generated from field: google.protobuf.Timestamp effective_date = 10;
443
+ */
444
+ effectiveDate?: Timestamp;
445
+ /**
446
+ * Timestamp of the termination of the appointment.
447
+ *
448
+ * @generated from field: optional google.protobuf.Timestamp termination_date = 11;
449
+ */
450
+ terminationDate?: Timestamp;
451
+ /**
452
+ * Timestamp of the last update to the appointment.
453
+ *
454
+ * @generated from field: google.protobuf.Timestamp updated_at = 12;
455
+ */
456
+ updatedAt?: Timestamp;
457
+ };
458
+ /**
459
+ * Describes the message producerflow.appointment.v1.Appointment.
460
+ * Use `create(AppointmentSchema)` to create a new message.
461
+ */
462
+ export declare const AppointmentSchema: GenMessage<Appointment>;
463
+ /**
464
+ * @generated from message producerflow.appointment.v1.License
465
+ */
466
+ export type License = Message<"producerflow.appointment.v1.License"> & {
467
+ /**
468
+ * The ID of the license.
469
+ *
470
+ * @generated from field: string license_id = 1;
471
+ */
472
+ licenseId: string;
473
+ /**
474
+ * The license number.
475
+ *
476
+ * @generated from field: string license_number = 2;
477
+ */
478
+ licenseNumber: string;
479
+ /**
480
+ * The owner of the license, it can be an agency or a producer.
481
+ *
482
+ * @generated from oneof producerflow.appointment.v1.License.license_owner
483
+ */
484
+ licenseOwner: {
485
+ /**
486
+ * @generated from field: string producer_id = 3;
487
+ */
488
+ value: string;
489
+ case: "producerId";
490
+ } | {
491
+ /**
492
+ * @generated from field: string agency_id = 4;
493
+ */
494
+ value: string;
495
+ case: "agencyId";
496
+ } | {
497
+ case: undefined;
498
+ value?: undefined;
499
+ };
500
+ /**
501
+ * The two-letter state code of the license.
502
+ *
503
+ * @generated from field: string state = 5;
504
+ */
505
+ state: string;
506
+ /**
507
+ * The license class.
508
+ *
509
+ * @generated from field: string license_class = 6;
510
+ */
511
+ licenseClass: string;
512
+ };
513
+ /**
514
+ * Describes the message producerflow.appointment.v1.License.
515
+ * Use `create(LicenseSchema)` to create a new message.
516
+ */
517
+ export declare const LicenseSchema: GenMessage<License>;
518
+ /**
519
+ * @generated from message producerflow.appointment.v1.ListTerminationReasonsRequest
520
+ */
521
+ export type ListTerminationReasonsRequest = Message<"producerflow.appointment.v1.ListTerminationReasonsRequest"> & {
522
+ /**
523
+ * Required. The two-letter state code of the license for which you want to retrieve
524
+ * valid termination reasons. Different states may have different sets of valid
525
+ * termination reasons accepted by NIPR.
526
+ *
527
+ * @generated from field: string state = 1;
528
+ */
529
+ state: string;
530
+ };
531
+ /**
532
+ * Describes the message producerflow.appointment.v1.ListTerminationReasonsRequest.
533
+ * Use `create(ListTerminationReasonsRequestSchema)` to create a new message.
534
+ */
535
+ export declare const ListTerminationReasonsRequestSchema: GenMessage<ListTerminationReasonsRequest>;
536
+ /**
537
+ * @generated from message producerflow.appointment.v1.ListTerminationReasonsResponse
538
+ */
539
+ export type ListTerminationReasonsResponse = Message<"producerflow.appointment.v1.ListTerminationReasonsResponse"> & {
540
+ /**
541
+ * The list of valid termination reasons for the specified state.
542
+ * These reasons can be used when calling TerminateAppointment for licenses
543
+ * issued in this state.
544
+ *
545
+ * @generated from field: repeated producerflow.appointment.v1.TerminationReason termination_reasons = 1;
546
+ */
547
+ terminationReasons: TerminationReason[];
548
+ };
549
+ /**
550
+ * Describes the message producerflow.appointment.v1.ListTerminationReasonsResponse.
551
+ * Use `create(ListTerminationReasonsResponseSchema)` to create a new message.
552
+ */
553
+ export declare const ListTerminationReasonsResponseSchema: GenMessage<ListTerminationReasonsResponse>;
554
+ /**
555
+ * Processing status of the appointment.
556
+ *
557
+ * @generated from enum producerflow.appointment.v1.ProcessingStatus
558
+ */
559
+ export declare enum ProcessingStatus {
560
+ /**
561
+ * @generated from enum value: PROCESSING_STATUS_UNSPECIFIED = 0;
562
+ */
563
+ UNSPECIFIED = 0,
564
+ /**
565
+ * @generated from enum value: PROCESSING_STATUS_IN_PROGRESS = 1;
566
+ */
567
+ IN_PROGRESS = 1,
568
+ /**
569
+ * @generated from enum value: PROCESSING_STATUS_APPOINTED = 2;
570
+ */
571
+ APPOINTED = 2,
572
+ /**
573
+ * @generated from enum value: PROCESSING_STATUS_TERMINATED = 3;
574
+ */
575
+ TERMINATED = 3,
576
+ /**
577
+ * @generated from enum value: PROCESSING_STATUS_REJECTED = 4;
578
+ */
579
+ REJECTED = 4,
580
+ /**
581
+ * @generated from enum value: PROCESSING_STATUS_MISSING_LICENSE = 5;
582
+ */
583
+ MISSING_LICENSE = 5
584
+ }
585
+ /**
586
+ * Describes the enum producerflow.appointment.v1.ProcessingStatus.
587
+ */
588
+ export declare const ProcessingStatusSchema: GenEnum<ProcessingStatus>;
589
+ /**
590
+ * Type of appointment.
591
+ *
592
+ * @generated from enum producerflow.appointment.v1.AppointmentType
593
+ */
594
+ export declare enum AppointmentType {
595
+ /**
596
+ * @generated from enum value: APPOINTMENT_TYPE_UNSPECIFIED = 0;
597
+ */
598
+ UNSPECIFIED = 0,
599
+ /**
600
+ * @generated from enum value: APPOINTMENT_TYPE_REGISTRY = 1;
601
+ */
602
+ REGISTRY = 1,
603
+ /**
604
+ * @generated from enum value: APPOINTMENT_TYPE_UP_FRONT = 2;
605
+ */
606
+ UP_FRONT = 2,
607
+ /**
608
+ * @generated from enum value: APPOINTMENT_TYPE_JUST_IN_TIME = 3;
609
+ */
610
+ JUST_IN_TIME = 3
611
+ }
612
+ /**
613
+ * Describes the enum producerflow.appointment.v1.AppointmentType.
614
+ */
615
+ export declare const AppointmentTypeSchema: GenEnum<AppointmentType>;
616
+ /**
617
+ * TerminationReason represents the reason for the termination of an appointment.
618
+ * These reasons correspond to NIPR's valid termination codes and vary by state.
619
+ * Use ListTerminationReasons to get the valid reasons for a specific state
620
+ * before terminating an appointment.
621
+ *
622
+ * Reference: https://pdb.nipr.com/Gateway/ValidTerms
623
+ *
624
+ * @generated from enum producerflow.appointment.v1.TerminationReason
625
+ */
626
+ export declare enum TerminationReason {
627
+ /**
628
+ * @generated from enum value: TERMINATION_REASON_UNSPECIFIED = 0;
629
+ */
630
+ UNSPECIFIED = 0,
631
+ /**
632
+ * @generated from enum value: TERMINATION_REASON_VOLUNTARY_TERMINATION = 1;
633
+ */
634
+ VOLUNTARY_TERMINATION = 1,
635
+ /**
636
+ * @generated from enum value: TERMINATION_REASON_INADEQUATE_PRODUCTION = 2;
637
+ */
638
+ INADEQUATE_PRODUCTION = 2,
639
+ /**
640
+ * @generated from enum value: TERMINATION_REASON_CANCELLED_BY_GENERAL_AGENT = 3;
641
+ */
642
+ CANCELLED_BY_GENERAL_AGENT = 3,
643
+ /**
644
+ * @generated from enum value: TERMINATION_REASON_DEATH = 4;
645
+ */
646
+ DEATH = 4,
647
+ /**
648
+ * @generated from enum value: TERMINATION_REASON_COMPANY_DEFUNCT_OR_LIQUIDATION = 5;
649
+ */
650
+ COMPANY_DEFUNCT_OR_LIQUIDATION = 5,
651
+ /**
652
+ * @generated from enum value: TERMINATION_REASON_COMPANY_INDEBTEDNESS = 6;
653
+ */
654
+ COMPANY_INDEBTEDNESS = 6,
655
+ /**
656
+ * @generated from enum value: TERMINATION_REASON_POOR_POLICYHOLDER_SERVICE = 7;
657
+ */
658
+ POOR_POLICYHOLDER_SERVICE = 7,
659
+ /**
660
+ * @generated from enum value: TERMINATION_REASON_AGENT_MOVED = 8;
661
+ */
662
+ AGENT_MOVED = 8,
663
+ /**
664
+ * @generated from enum value: TERMINATION_REASON_APPOINTED_IN_ERROR = 9;
665
+ */
666
+ APPOINTED_IN_ERROR = 9,
667
+ /**
668
+ * @generated from enum value: TERMINATION_REASON_CANCELLED = 10;
669
+ */
670
+ CANCELLED = 10,
671
+ /**
672
+ * @generated from enum value: TERMINATION_REASON_CANCELLED_FOR_CAUSE = 11;
673
+ */
674
+ CANCELLED_FOR_CAUSE = 11,
675
+ /**
676
+ * @generated from enum value: TERMINATION_REASON_COMPANY_MERGER = 12;
677
+ */
678
+ COMPANY_MERGER = 12,
679
+ /**
680
+ * @generated from enum value: TERMINATION_REASON_REVOKED = 13;
681
+ */
682
+ REVOKED = 13,
683
+ /**
684
+ * @generated from enum value: TERMINATION_REASON_SUSPENDED_FOR_COMPLIANCE = 14;
685
+ */
686
+ SUSPENDED_FOR_COMPLIANCE = 14,
687
+ /**
688
+ * @generated from enum value: TERMINATION_REASON_REQUEST_REGULATORY_REVIEW = 15;
689
+ */
690
+ REQUEST_REGULATORY_REVIEW = 15
691
+ }
692
+ /**
693
+ * Describes the enum producerflow.appointment.v1.TerminationReason.
694
+ */
695
+ export declare const TerminationReasonSchema: GenEnum<TerminationReason>;
696
+ /**
697
+ * AppointmentService manages license appointments through NIPR.
698
+ *
699
+ * The appointment flow in NIPR is as follows:
700
+ * 1. A new appointment (or termination) is requested for a license number.
701
+ * 2. Some time later, NIPR processes the request and returns the final result.
702
+ *
703
+ * Since NIPR does not return results immediately, RequestAppointment and TerminateAppointment
704
+ * RPCs will return a processing status of IN_PROGRESS if the request is accepted by NIPR.
705
+ * When the appointment is finally processed by NIPR, ProducerFlow will notify via a webhook of
706
+ * the final result. Also, any call from this point on to ListAppointments or GetAppointment will
707
+ * also return the final result.
708
+ *
709
+ * Any call to this service must be authenticated using an API key in the request headers. The API key
710
+ * can be found in the ProducerFlow API key section of the ProducerFlow UI and it identifies the tenant
711
+ * that is making the request.
712
+ *
713
+ * @generated from service producerflow.appointment.v1.AppointmentService
714
+ */
715
+ export declare const AppointmentService: GenService<{
716
+ /**
717
+ * Retrieves the details of an appointment by its ID.
718
+ *
719
+ * @generated from rpc producerflow.appointment.v1.AppointmentService.GetAppointment
720
+ */
721
+ getAppointment: {
722
+ methodKind: "unary";
723
+ input: typeof GetAppointmentRequestSchema;
724
+ output: typeof GetAppointmentResponseSchema;
725
+ };
726
+ /**
727
+ * Retrieves the total fees associated with requesting an appointment for the given license.
728
+ * Fee amounts are represented as integer values in cents. E.g. $10.34 is sent as 1034.
729
+ *
730
+ * @generated from rpc producerflow.appointment.v1.AppointmentService.GetAppointmentFees
731
+ */
732
+ getAppointmentFees: {
733
+ methodKind: "unary";
734
+ input: typeof GetAppointmentFeesRequestSchema;
735
+ output: typeof GetAppointmentFeesResponseSchema;
736
+ };
737
+ /**
738
+ * Retrieves the carriers that are available to appoint licenses for the tenant.
739
+ *
740
+ * @generated from rpc producerflow.appointment.v1.AppointmentService.GetAppointableCarriers
741
+ */
742
+ getAppointableCarriers: {
743
+ methodKind: "unary";
744
+ input: typeof GetAppointableCarriersRequestSchema;
745
+ output: typeof GetAppointableCarriersResponseSchema;
746
+ };
747
+ /**
748
+ * Retrieves the total fees associated with terminating an appointment for the given license.
749
+ * Fee amounts are represented as integer values in cents. E.g. $10.34 is sent as 1034.
750
+ *
751
+ * @generated from rpc producerflow.appointment.v1.AppointmentService.GetTerminationFees
752
+ */
753
+ getTerminationFees: {
754
+ methodKind: "unary";
755
+ input: typeof GetTerminationFeesRequestSchema;
756
+ output: typeof GetTerminationFeesResponseSchema;
757
+ };
758
+ /**
759
+ * Lists appointments for the tenant, optionally filtered by processing status.
760
+ *
761
+ * @generated from rpc producerflow.appointment.v1.AppointmentService.ListAppointments
762
+ */
763
+ listAppointments: {
764
+ methodKind: "unary";
765
+ input: typeof ListAppointmentsRequestSchema;
766
+ output: typeof ListAppointmentsResponseSchema;
767
+ };
768
+ /**
769
+ * Returns a list of licenses that are eligible to be appointed.
770
+ *
771
+ * @generated from rpc producerflow.appointment.v1.AppointmentService.ListEligibleLicenses
772
+ */
773
+ listEligibleLicenses: {
774
+ methodKind: "unary";
775
+ input: typeof ListEligibleLicensesRequestSchema;
776
+ output: typeof ListEligibleLicensesResponseSchema;
777
+ };
778
+ /**
779
+ * Requests a new appointment for a license that is eligible to be appointed. The simpler way
780
+ * to do this is to call ListEligibleLicenses to get a list of licenses that are eligible to be
781
+ * appointed. Then, call RequestAppointment for the licenses in the list that you want to appoint.
782
+ *
783
+ * If the request is accepted by NIPR, the appointment will have IN_PROGRESS processing status.
784
+ * If rejected, it will have REJECTED status and reasons will be provided in not_eligible_reasons.
785
+ *
786
+ * @generated from rpc producerflow.appointment.v1.AppointmentService.RequestAppointment
787
+ */
788
+ requestAppointment: {
789
+ methodKind: "unary";
790
+ input: typeof RequestAppointmentRequestSchema;
791
+ output: typeof RequestAppointmentResponseSchema;
792
+ };
793
+ /**
794
+ * Terminates an existing appointment, permanently ending the relationship between
795
+ * the license holder and the carrier.
796
+ *
797
+ * Before calling this method, you must:
798
+ * 1. Ensure the appointment exists and is in APPOINTED status
799
+ * 2. Call ListTerminationReasons to get valid termination reasons for the license's state
800
+ * 3. Select an appropriate termination reason from the state-specific list
801
+ *
802
+ * The termination process works as follows:
803
+ * - The request is submitted to NIPR for processing
804
+ * - Once NIPR completes processing, the status becomes TERMINATED
805
+ * - If rejected by NIPR, the appointment remains in its current status
806
+ *
807
+ * Important considerations:
808
+ * - Termination is permanent and cannot be undone
809
+ * - Termination reasons must be valid for the specific state where the license is issued
810
+ * - Some terminations may incur fees (check GetTerminationFees first)
811
+ * - You will receive webhook notifications when the termination is processed by NIPR
812
+ *
813
+ * The response indicates whether the termination request was successfully submitted,
814
+ * not whether the actual termination was completed (since NIPR processes asynchronously).
815
+ *
816
+ * @generated from rpc producerflow.appointment.v1.AppointmentService.TerminateAppointment
817
+ */
818
+ terminateAppointment: {
819
+ methodKind: "unary";
820
+ input: typeof TerminateAppointmentRequestSchema;
821
+ output: typeof TerminateAppointmentResponseSchema;
822
+ };
823
+ /**
824
+ * Lists the valid termination reasons for appointments in a specific state.
825
+ *
826
+ * When terminating an appointment, you must provide a valid termination reason that is
827
+ * accepted by NIPR for the state where the license is issued. Termination reasons vary
828
+ * by state, so you should call this method first to retrieve the list of valid reasons
829
+ * before calling TerminateAppointment.
830
+ *
831
+ * The termination reasons returned are based on NIPR's valid termination codes for the
832
+ * specified state. Each reason corresponds to a specific business scenario for why an
833
+ * appointment might be terminated (e.g., voluntary termination, inadequate production,
834
+ * company merger, etc.).
835
+ *
836
+ * @generated from rpc producerflow.appointment.v1.AppointmentService.ListTerminationReasons
837
+ */
838
+ listTerminationReasons: {
839
+ methodKind: "unary";
840
+ input: typeof ListTerminationReasonsRequestSchema;
841
+ output: typeof ListTerminationReasonsResponseSchema;
842
+ };
843
+ }>;