@omerikanec/api-client-demo 4.1.0 → 5.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.
@@ -5,7 +5,1805 @@
5
5
  * API для Национального клуба породы Сибирский хаски
6
6
  * OpenAPI spec version: 1.0.0
7
7
  */
8
+ export interface Achievement {
9
+ readonly id: number;
10
+ /** @maxLength 200 */
11
+ title?: string;
12
+ /**
13
+ * @minimum -9223372036854776000
14
+ * @maximum 9223372036854776000
15
+ * @nullable
16
+ */
17
+ place?: number | null;
18
+ /** @nullable */
19
+ certificate?: string | null;
20
+ /** @nullable */
21
+ achieved_at?: string | null;
22
+ user: number;
23
+ /** @nullable */
24
+ dog?: number | null;
25
+ /** @nullable */
26
+ event?: number | null;
27
+ }
8
28
  export interface ActivityFeedResponse {
9
29
  /** Список последних сообщений из Telegram-канала */
10
30
  results: unknown[];
11
31
  }
32
+ /**
33
+ * * `membership` - Членство
34
+ * `litter_registration` - Регистрация помёта
35
+ * `kennel_registration` - Регистрация питомника
36
+ * `document_request` - Запрос документов
37
+ * `complaint` - Жалоба
38
+ * `other` - Другое
39
+ */
40
+ export type ApplicationTypeEnum = typeof ApplicationTypeEnum[keyof typeof ApplicationTypeEnum];
41
+ export declare const ApplicationTypeEnum: {
42
+ readonly membership: "membership";
43
+ readonly litter_registration: "litter_registration";
44
+ readonly kennel_registration: "kennel_registration";
45
+ readonly document_request: "document_request";
46
+ readonly complaint: "complaint";
47
+ readonly other: "other";
48
+ };
49
+ /**
50
+ * * `new` - Новая
51
+ * `in_progress` - В процессе
52
+ * `done` - Рассмотрена
53
+ * `rejected` - Отклонена
54
+ */
55
+ export type ApplicationStatusEnum = typeof ApplicationStatusEnum[keyof typeof ApplicationStatusEnum];
56
+ export declare const ApplicationStatusEnum: {
57
+ readonly new: "new";
58
+ readonly in_progress: "in_progress";
59
+ readonly done: "done";
60
+ readonly rejected: "rejected";
61
+ };
62
+ export interface Application {
63
+ readonly id: number;
64
+ application_type: ApplicationTypeEnum;
65
+ payload?: unknown;
66
+ status?: ApplicationStatusEnum;
67
+ history?: unknown;
68
+ readonly created_at: string;
69
+ readonly updated_at: string;
70
+ user: number;
71
+ }
72
+ export interface ApplicationRequest {
73
+ application_type: ApplicationTypeEnum;
74
+ payload?: unknown;
75
+ status?: ApplicationStatusEnum;
76
+ history?: unknown;
77
+ user: number;
78
+ }
79
+ export type BlankEnum = typeof BlankEnum[keyof typeof BlankEnum];
80
+ export declare const BlankEnum: {
81
+ readonly '': "";
82
+ };
83
+ export interface BoardMember {
84
+ readonly id: number;
85
+ readonly working_group_id: number;
86
+ /** @maxLength 200 */
87
+ name: string;
88
+ /** @maxLength 200 */
89
+ position?: string;
90
+ /** @maxLength 200 */
91
+ bio_key?: string;
92
+ /** @nullable */
93
+ photo?: string | null;
94
+ /** @maxLength 254 */
95
+ email?: string;
96
+ /** @maxLength 50 */
97
+ phone?: string;
98
+ /**
99
+ * @minimum -9223372036854776000
100
+ * @maximum 9223372036854776000
101
+ */
102
+ order?: number;
103
+ /** @nullable */
104
+ working_group?: number | null;
105
+ }
106
+ /**
107
+ * * `history` - history
108
+ * `character` - character
109
+ * `care` - care
110
+ * `grooming` - grooming
111
+ * `feeding` - feeding
112
+ */
113
+ export type CategoryEnum = typeof CategoryEnum[keyof typeof CategoryEnum];
114
+ export declare const CategoryEnum: {
115
+ readonly history: "history";
116
+ readonly character: "character";
117
+ readonly care: "care";
118
+ readonly grooming: "grooming";
119
+ readonly feeding: "feeding";
120
+ };
121
+ export declare const BreedArticleCategory: {
122
+ readonly '': "";
123
+ readonly history: "history";
124
+ readonly character: "character";
125
+ readonly care: "care";
126
+ readonly grooming: "grooming";
127
+ readonly feeding: "feeding";
128
+ };
129
+ export interface BreedArticle {
130
+ readonly id: number;
131
+ /** @maxLength 200 */
132
+ title_key: string;
133
+ /** @maxLength 200 */
134
+ content_key?: string;
135
+ category?: typeof BreedArticleCategory[keyof typeof BreedArticleCategory];
136
+ videos?: unknown;
137
+ }
138
+ export interface BreedStandard {
139
+ readonly id: number;
140
+ /** @maxLength 200 */
141
+ title_key: string;
142
+ /** @maxLength 200 */
143
+ content_key?: string;
144
+ /** @maxLength 50 */
145
+ fci_number?: string;
146
+ illustrations?: unknown;
147
+ /** @maxLength 50 */
148
+ version?: string;
149
+ /** @nullable */
150
+ approved_date?: string | null;
151
+ }
152
+ export interface Breeder {
153
+ readonly id: number;
154
+ /**
155
+ * @maxLength 255
156
+ * @nullable
157
+ */
158
+ uuid?: string | null;
159
+ /** @maxLength 500 */
160
+ name: string;
161
+ /**
162
+ * @maxLength 500
163
+ * @nullable
164
+ */
165
+ kennel?: string | null;
166
+ /**
167
+ * @maxLength 1000
168
+ * @nullable
169
+ */
170
+ breeder_url?: string | null;
171
+ /**
172
+ * @maxLength 1000
173
+ * @nullable
174
+ */
175
+ kennel_url?: string | null;
176
+ }
177
+ export interface CalculateCoiRequestRequest {
178
+ /** Глубина расчёта (1–10, по умолчанию 5) */
179
+ generations?: number;
180
+ /** Учитывать COI предков (точнее, но медленнее) */
181
+ use_ancestor_coi?: boolean;
182
+ }
183
+ export type CalculateCoiResponseAncestorContributions = {
184
+ [key: string]: number;
185
+ };
186
+ export interface CalculateCoiResponse {
187
+ coi: number;
188
+ coi_updated_on: string;
189
+ generations: number;
190
+ common_ancestors: number;
191
+ total_ancestors_sire: number;
192
+ total_ancestors_dam: number;
193
+ ancestor_contributions: CalculateCoiResponseAncestorContributions;
194
+ }
195
+ /**
196
+ * * `charter` - устав
197
+ * `regulation` - регламент
198
+ * `standard` - стандарт
199
+ * `form` - форма
200
+ */
201
+ export type DocumentTypeEnum = typeof DocumentTypeEnum[keyof typeof DocumentTypeEnum];
202
+ export declare const DocumentTypeEnum: {
203
+ readonly charter: "charter";
204
+ readonly regulation: "regulation";
205
+ readonly standard: "standard";
206
+ readonly form: "form";
207
+ };
208
+ export interface ClubDocument {
209
+ readonly id: number;
210
+ /** @maxLength 200 */
211
+ title_key: string;
212
+ description_key?: string;
213
+ file: string;
214
+ document_type: DocumentTypeEnum;
215
+ readonly uploaded_at: string;
216
+ readonly file_size: string;
217
+ readonly file_ext: string;
218
+ readonly mime_type: string;
219
+ /**
220
+ * @minimum 0
221
+ * @maximum 9223372036854776000
222
+ */
223
+ order?: number;
224
+ }
225
+ export interface ClubStats {
226
+ /**
227
+ * @minimum 0
228
+ * @maximum 9223372036854776000
229
+ */
230
+ members_count?: number;
231
+ /**
232
+ * @minimum 0
233
+ * @maximum 9223372036854776000
234
+ */
235
+ kennels_count?: number;
236
+ /**
237
+ * @minimum 0
238
+ * @maximum 9223372036854776000
239
+ */
240
+ dogs_in_archive_count?: number;
241
+ /**
242
+ * @minimum 0
243
+ * @maximum 9223372036854776000
244
+ */
245
+ regions_count?: number;
246
+ readonly updated_at: string;
247
+ }
248
+ export interface ContentByKeyResponse {
249
+ key: string;
250
+ value: unknown;
251
+ }
252
+ export interface ContentDictionary {
253
+ readonly id: number;
254
+ /** @maxLength 200 */
255
+ key: string;
256
+ value: string;
257
+ /** @maxLength 100 */
258
+ page?: string;
259
+ /** @maxLength 10 */
260
+ locale?: string;
261
+ /** @maxLength 200 */
262
+ updated_by?: string;
263
+ readonly updated_at: string;
264
+ }
265
+ /**
266
+ * * `male` - male
267
+ * `female` - female
268
+ */
269
+ export type DogSexEnum = typeof DogSexEnum[keyof typeof DogSexEnum];
270
+ export declare const DogSexEnum: {
271
+ readonly male: "male";
272
+ readonly female: "female";
273
+ };
274
+ export declare const DogSex: {
275
+ readonly '': "";
276
+ readonly male: "male";
277
+ readonly female: "female";
278
+ };
279
+ export interface Dog {
280
+ readonly id: number;
281
+ /** @maxLength 200 */
282
+ name: string;
283
+ /** @maxLength 200 */
284
+ registered_name?: string;
285
+ sex?: typeof DogSex[keyof typeof DogSex];
286
+ /** @nullable */
287
+ date_of_birth?: string | null;
288
+ /** @maxLength 200 */
289
+ pedigree_number?: string;
290
+ /** @maxLength 200 */
291
+ microchip?: string;
292
+ titles?: unknown;
293
+ is_champion?: boolean;
294
+ photos?: unknown;
295
+ readonly created_at: string;
296
+ owner: number;
297
+ /** @nullable */
298
+ kennel?: number | null;
299
+ /** @nullable */
300
+ sire?: number | null;
301
+ /** @nullable */
302
+ dam?: number | null;
303
+ }
304
+ /**
305
+ * * `1` - Кобель
306
+ * `2` - Сука
307
+ */
308
+ export type Sex6bbEnum = typeof Sex6bbEnum[keyof typeof Sex6bbEnum];
309
+ export declare const Sex6bbEnum: {
310
+ readonly NUMBER_1: 1;
311
+ readonly NUMBER_2: 2;
312
+ };
313
+ /**
314
+ * Краткая информация о родителе (без вложенных).
315
+ */
316
+ export interface DogParent {
317
+ readonly id: number;
318
+ /**
319
+ * @maxLength 255
320
+ * @nullable
321
+ */
322
+ uuid?: string | null;
323
+ /**
324
+ * @maxLength 64
325
+ * @nullable
326
+ */
327
+ zoo_hash?: string | null;
328
+ readonly display_name: string;
329
+ /**
330
+ * @maxLength 500
331
+ * @nullable
332
+ */
333
+ registered_name?: string | null;
334
+ /**
335
+ * @maxLength 255
336
+ * @nullable
337
+ */
338
+ call_name?: string | null;
339
+ /**
340
+ * @minimum -9223372036854776000
341
+ * @maximum 9223372036854776000
342
+ */
343
+ sex: Sex6bbEnum;
344
+ readonly sex_display: string;
345
+ /**
346
+ * @minimum -9223372036854776000
347
+ * @maximum 9223372036854776000
348
+ * @nullable
349
+ */
350
+ year_of_birth?: number | null;
351
+ /**
352
+ * @maxLength 255
353
+ * @nullable
354
+ */
355
+ color?: string | null;
356
+ /**
357
+ * @maxLength 1000
358
+ * @nullable
359
+ */
360
+ photo_url?: string | null;
361
+ }
362
+ export interface Owner {
363
+ readonly id: number;
364
+ /**
365
+ * @maxLength 255
366
+ * @nullable
367
+ */
368
+ uuid?: string | null;
369
+ /** @maxLength 500 */
370
+ name: string;
371
+ /**
372
+ * @maxLength 500
373
+ * @nullable
374
+ */
375
+ kennel?: string | null;
376
+ /**
377
+ * @maxLength 1000
378
+ * @nullable
379
+ */
380
+ owner_url?: string | null;
381
+ /**
382
+ * @maxLength 1000
383
+ * @nullable
384
+ */
385
+ kennel_url?: string | null;
386
+ }
387
+ export interface Title {
388
+ readonly id: number;
389
+ /** @maxLength 100 */
390
+ short_name: string;
391
+ /**
392
+ * @maxLength 500
393
+ * @nullable
394
+ */
395
+ long_name?: string | null;
396
+ is_prefix: boolean;
397
+ /**
398
+ * @maxLength 100
399
+ * @nullable
400
+ */
401
+ country?: string | null;
402
+ /**
403
+ * @minimum -9223372036854776000
404
+ * @maximum 9223372036854776000
405
+ * @nullable
406
+ */
407
+ winner_year?: number | null;
408
+ }
409
+ export interface MedicalRecord {
410
+ readonly id: number;
411
+ /** @maxLength 255 */
412
+ registry: string;
413
+ /** @nullable */
414
+ test_date?: string | null;
415
+ /**
416
+ * @maxLength 1000
417
+ * @nullable
418
+ */
419
+ conclusion?: string | null;
420
+ /**
421
+ * @maxLength 255
422
+ * @nullable
423
+ */
424
+ ofa_number?: string | null;
425
+ /** @maxLength 255 */
426
+ source: string;
427
+ }
428
+ export interface Litter {
429
+ readonly id: number;
430
+ /** @nullable */
431
+ date_of_birth?: string | null;
432
+ /**
433
+ * @minimum -9223372036854776000
434
+ * @maximum 9223372036854776000
435
+ * @nullable
436
+ */
437
+ litter_male_count?: number | null;
438
+ /**
439
+ * @minimum -9223372036854776000
440
+ * @maximum 9223372036854776000
441
+ * @nullable
442
+ */
443
+ litter_female_count?: number | null;
444
+ /**
445
+ * @minimum -9223372036854776000
446
+ * @maximum 9223372036854776000
447
+ * @nullable
448
+ */
449
+ litter_undef_count?: number | null;
450
+ }
451
+ /**
452
+ * Полная информация о собаке.
453
+ */
454
+ export interface DogDetail {
455
+ readonly id: number;
456
+ /**
457
+ * @maxLength 255
458
+ * @nullable
459
+ */
460
+ uuid?: string | null;
461
+ /**
462
+ * @maxLength 64
463
+ * @nullable
464
+ */
465
+ zoo_hash?: string | null;
466
+ /**
467
+ * @maxLength 255
468
+ * @nullable
469
+ */
470
+ zooportal_id?: string | null;
471
+ readonly display_name: string;
472
+ /**
473
+ * @maxLength 500
474
+ * @nullable
475
+ */
476
+ registered_name?: string | null;
477
+ /**
478
+ * @maxLength 255
479
+ * @nullable
480
+ */
481
+ call_name?: string | null;
482
+ /**
483
+ * @maxLength 500
484
+ * @nullable
485
+ */
486
+ link_name?: string | null;
487
+ /**
488
+ * @minimum -9223372036854776000
489
+ * @maximum 9223372036854776000
490
+ */
491
+ sex: Sex6bbEnum;
492
+ readonly sex_display: string;
493
+ /**
494
+ * @minimum -9223372036854776000
495
+ * @maximum 9223372036854776000
496
+ * @nullable
497
+ */
498
+ year_of_birth?: number | null;
499
+ /**
500
+ * @minimum -9223372036854776000
501
+ * @maximum 9223372036854776000
502
+ * @nullable
503
+ */
504
+ month_of_birth?: number | null;
505
+ /**
506
+ * @minimum -9223372036854776000
507
+ * @maximum 9223372036854776000
508
+ * @nullable
509
+ */
510
+ day_of_birth?: number | null;
511
+ /** @nullable */
512
+ date_of_birth?: string | null;
513
+ /**
514
+ * @minimum -9223372036854776000
515
+ * @maximum 9223372036854776000
516
+ * @nullable
517
+ */
518
+ year_of_death?: number | null;
519
+ /** @nullable */
520
+ date_of_death?: string | null;
521
+ readonly is_alive: string;
522
+ /**
523
+ * @maxLength 255
524
+ * @nullable
525
+ */
526
+ land_of_birth?: string | null;
527
+ /**
528
+ * @maxLength 10
529
+ * @nullable
530
+ */
531
+ land_of_birth_code?: string | null;
532
+ /**
533
+ * @maxLength 255
534
+ * @nullable
535
+ */
536
+ land_of_standing?: string | null;
537
+ /** @nullable */
538
+ size?: number | null;
539
+ /** @nullable */
540
+ weight?: number | null;
541
+ /**
542
+ * @maxLength 255
543
+ * @nullable
544
+ */
545
+ color?: string | null;
546
+ /**
547
+ * @maxLength 255
548
+ * @nullable
549
+ */
550
+ color_marking?: string | null;
551
+ /**
552
+ * @maxLength 100
553
+ * @nullable
554
+ */
555
+ eyes_color?: string | null;
556
+ /**
557
+ * @maxLength 255
558
+ * @nullable
559
+ */
560
+ variety?: string | null;
561
+ /**
562
+ * @maxLength 1000
563
+ * @nullable
564
+ */
565
+ photo_url?: string | null;
566
+ /**
567
+ * @maxLength 500
568
+ * @nullable
569
+ */
570
+ prefix_titles?: string | null;
571
+ /**
572
+ * @maxLength 500
573
+ * @nullable
574
+ */
575
+ suffix_titles?: string | null;
576
+ /**
577
+ * @maxLength 500
578
+ * @nullable
579
+ */
580
+ other_titles?: string | null;
581
+ /**
582
+ * @maxLength 255
583
+ * @nullable
584
+ */
585
+ registration_number?: string | null;
586
+ /**
587
+ * @maxLength 255
588
+ * @nullable
589
+ */
590
+ brand_chip?: string | null;
591
+ /** @nullable */
592
+ coi?: number | null;
593
+ /** @nullable */
594
+ incomplete_pedigree?: boolean | null;
595
+ /** @nullable */
596
+ neutered?: boolean | null;
597
+ /** @nullable */
598
+ approved_for_breeding?: boolean | null;
599
+ /**
600
+ * @maxLength 500
601
+ * @nullable
602
+ */
603
+ kennel?: string | null;
604
+ readonly dam: DogParent;
605
+ readonly sire: DogParent;
606
+ readonly breeders: readonly Breeder[];
607
+ readonly owners: readonly Owner[];
608
+ readonly titles: readonly Title[];
609
+ readonly medical_records: readonly MedicalRecord[];
610
+ readonly birth_litter: Litter;
611
+ }
612
+ /**
613
+ * Краткая информация о собаке для списка/поиска.
614
+
615
+ breeder_names — список имён заводчиков (из таблицы breeder через dogbreederlink).
616
+ Это правильный источник данных о питомнике, а НЕ dog.kennel.
617
+ */
618
+ export interface DogList {
619
+ readonly id: number;
620
+ /**
621
+ * @maxLength 255
622
+ * @nullable
623
+ */
624
+ uuid?: string | null;
625
+ /**
626
+ * @maxLength 64
627
+ * @nullable
628
+ */
629
+ zoo_hash?: string | null;
630
+ readonly display_name: string;
631
+ /**
632
+ * @maxLength 500
633
+ * @nullable
634
+ */
635
+ registered_name?: string | null;
636
+ /**
637
+ * @maxLength 255
638
+ * @nullable
639
+ */
640
+ call_name?: string | null;
641
+ /**
642
+ * @minimum -9223372036854776000
643
+ * @maximum 9223372036854776000
644
+ */
645
+ sex: Sex6bbEnum;
646
+ readonly sex_display: string;
647
+ /**
648
+ * @minimum -9223372036854776000
649
+ * @maximum 9223372036854776000
650
+ * @nullable
651
+ */
652
+ year_of_birth?: number | null;
653
+ /** @nullable */
654
+ date_of_birth?: string | null;
655
+ /**
656
+ * @maxLength 255
657
+ * @nullable
658
+ */
659
+ color?: string | null;
660
+ /**
661
+ * @maxLength 1000
662
+ * @nullable
663
+ */
664
+ photo_url?: string | null;
665
+ /**
666
+ * @maxLength 255
667
+ * @nullable
668
+ */
669
+ land_of_birth?: string | null;
670
+ /**
671
+ * @maxLength 500
672
+ * @nullable
673
+ */
674
+ prefix_titles?: string | null;
675
+ /**
676
+ * @maxLength 500
677
+ * @nullable
678
+ */
679
+ suffix_titles?: string | null;
680
+ readonly breeder_names: string;
681
+ }
682
+ export declare const DogRequestSex: {
683
+ readonly '': "";
684
+ readonly male: "male";
685
+ readonly female: "female";
686
+ };
687
+ export interface DogRequest {
688
+ /**
689
+ * @minLength 1
690
+ * @maxLength 200
691
+ */
692
+ name: string;
693
+ /** @maxLength 200 */
694
+ registered_name?: string;
695
+ sex?: typeof DogRequestSex[keyof typeof DogRequestSex];
696
+ /** @nullable */
697
+ date_of_birth?: string | null;
698
+ /** @maxLength 200 */
699
+ pedigree_number?: string;
700
+ /** @maxLength 200 */
701
+ microchip?: string;
702
+ titles?: unknown;
703
+ is_champion?: boolean;
704
+ photos?: unknown;
705
+ owner: number;
706
+ /** @nullable */
707
+ kennel?: number | null;
708
+ /** @nullable */
709
+ sire?: number | null;
710
+ /** @nullable */
711
+ dam?: number | null;
712
+ }
713
+ export interface DogStatsResponse {
714
+ total: number;
715
+ males: number;
716
+ females: number;
717
+ breeders: number;
718
+ with_zooportal_id: number;
719
+ with_uuid: number;
720
+ }
721
+ /**
722
+ * * `exhibition` - Выставка
723
+ * `seminar` - Семинар
724
+ * `meeting` - Встреча
725
+ * `other` - Другое
726
+ */
727
+ export type EventTypeEnum = typeof EventTypeEnum[keyof typeof EventTypeEnum];
728
+ export declare const EventTypeEnum: {
729
+ readonly exhibition: "exhibition";
730
+ readonly seminar: "seminar";
731
+ readonly meeting: "meeting";
732
+ readonly other: "other";
733
+ };
734
+ export declare const EventEventType: {
735
+ readonly '': "";
736
+ readonly exhibition: "exhibition";
737
+ readonly seminar: "seminar";
738
+ readonly meeting: "meeting";
739
+ readonly other: "other";
740
+ };
741
+ export interface Event {
742
+ readonly id: number;
743
+ /** @maxLength 200 */
744
+ title_key: string;
745
+ description_key?: string;
746
+ event_type?: typeof EventEventType[keyof typeof EventEventType];
747
+ /** @maxLength 255 */
748
+ location?: string;
749
+ starts_at: string;
750
+ /** @nullable */
751
+ ends_at?: string | null;
752
+ /** @maxLength 200 */
753
+ registration_link?: string;
754
+ readonly created_at: string;
755
+ judges?: number[];
756
+ }
757
+ export interface EventReport {
758
+ readonly id: number;
759
+ event: number;
760
+ readonly event_title_key: string;
761
+ readonly event_description_key: string;
762
+ readonly event_starts_at: string;
763
+ readonly event_location: string;
764
+ readonly photos: string;
765
+ readonly videos: string;
766
+ /**
767
+ * @nullable
768
+ * @pattern (?:pdf|docx|doc|rtf|xlsx|xls|ppt|pptx|txt)$
769
+ */
770
+ results?: string | null;
771
+ result_description?: unknown;
772
+ readonly created_at: string;
773
+ }
774
+ export interface Gallery {
775
+ readonly id: number;
776
+ /** @maxLength 200 */
777
+ title_key: string;
778
+ /** @maxLength 255 */
779
+ description_key?: string;
780
+ images?: unknown;
781
+ is_highlight?: boolean;
782
+ readonly created_at: string;
783
+ }
784
+ export interface News {
785
+ readonly id: number;
786
+ /** @maxLength 200 */
787
+ title_key: string;
788
+ /** @maxLength 255 */
789
+ lead_key?: string;
790
+ body_key?: string;
791
+ /**
792
+ * @maxLength 50
793
+ * @pattern ^[-a-zA-Z0-9_]+$
794
+ */
795
+ slug: string;
796
+ tags?: unknown;
797
+ is_featured?: boolean;
798
+ /** @nullable */
799
+ cover_image?: string | null;
800
+ readonly published_at: string;
801
+ readonly updated_at: string;
802
+ /** @nullable */
803
+ author?: number | null;
804
+ }
805
+ export interface HomeResponse {
806
+ featured_news: News[];
807
+ upcoming_events: Event[];
808
+ highlight_galleries: Gallery[];
809
+ }
810
+ export interface ImportBreedarchiveBrowseRequest {
811
+ /**
812
+ * @minimum 1
813
+ * @maximum 30
814
+ */
815
+ recent_days?: number;
816
+ }
817
+ export interface ImportBreedarchiveDogRequest {
818
+ /**
819
+ * UUID собаки в BreedArchive
820
+ * @minLength 1
821
+ */
822
+ uuid: string;
823
+ force_update?: boolean;
824
+ }
825
+ /**
826
+ * Сериализатор для загрузки полной родословной по UUID.
827
+ */
828
+ export interface ImportBreedarchiveFullPedigreeRequest {
829
+ /**
830
+ * UUID собаки в BreedArchive (из URL /animal/view/name-{uuid})
831
+ * @minLength 1
832
+ */
833
+ uuid: string;
834
+ /** True — сбросить кеш и загрузить заново даже если собака уже есть в БД */
835
+ force_update?: boolean;
836
+ }
837
+ export interface ImportBreedarchiveRecentRequest {
838
+ /**
839
+ * @minimum 1
840
+ * @maximum 10
841
+ */
842
+ pages_count?: number;
843
+ /**
844
+ * @minimum 0
845
+ * @maximum 9
846
+ */
847
+ start_page?: number;
848
+ is_full_sync?: boolean;
849
+ }
850
+ export interface ImportHybridDogRequest {
851
+ /**
852
+ * @minLength 1
853
+ * @maxLength 20
854
+ */
855
+ zooportal_id: string;
856
+ /**
857
+ * @minimum 1
858
+ * @maximum 5
859
+ */
860
+ generations?: number;
861
+ }
862
+ export interface ImportHybridFullDogRequest {
863
+ /**
864
+ * ID собаки на Zooportal
865
+ * @minLength 1
866
+ * @maxLength 20
867
+ */
868
+ zooportal_id: string;
869
+ /**
870
+ * Глубина парсинга Zoo страницы (для fallback родословной)
871
+ * @minimum 1
872
+ * @maximum 5
873
+ */
874
+ generations?: number;
875
+ /** True — сбросить BA-кеш и загрузить предков заново */
876
+ force_update?: boolean;
877
+ }
878
+ export interface ImportHybridFullPageRequest {
879
+ /**
880
+ * Номер страницы Zoo поиска
881
+ * @minimum 1
882
+ */
883
+ page_num: number;
884
+ /**
885
+ * @minimum 1
886
+ * @maximum 11
887
+ */
888
+ max_dogs?: number;
889
+ /**
890
+ * @minimum 1
891
+ * @maximum 5
892
+ */
893
+ generations?: number;
894
+ /**
895
+ * @minimum 0.5
896
+ * @maximum 10
897
+ */
898
+ delay?: number;
899
+ }
900
+ export interface ImportHybridFullRangeRequest {
901
+ /** @minimum 1 */
902
+ start_page: number;
903
+ /** @minimum 1 */
904
+ end_page: number;
905
+ /**
906
+ * @minimum 1
907
+ * @maximum 11
908
+ */
909
+ max_dogs_per_page?: number;
910
+ /**
911
+ * @minimum 1
912
+ * @maximum 5
913
+ */
914
+ generations?: number;
915
+ /**
916
+ * @minimum 0.5
917
+ * @maximum 10
918
+ */
919
+ delay?: number;
920
+ /**
921
+ * Пауза между страницами в секундах
922
+ * @minimum 1
923
+ * @maximum 600
924
+ */
925
+ countdown_between_pages?: number;
926
+ }
927
+ export interface ImportHybridPageRequest {
928
+ /** @minimum 1 */
929
+ page_num: number;
930
+ /**
931
+ * @minimum 1
932
+ * @maximum 11
933
+ */
934
+ max_dogs?: number;
935
+ /**
936
+ * @minimum 0.5
937
+ * @maximum 10
938
+ */
939
+ delay?: number;
940
+ /**
941
+ * @minimum 1
942
+ * @maximum 5
943
+ */
944
+ generations?: number;
945
+ }
946
+ export interface ImportHybridRangeRequest {
947
+ /** @minimum 1 */
948
+ start_page: number;
949
+ /** @minimum 1 */
950
+ end_page: number;
951
+ /**
952
+ * @minimum 1
953
+ * @maximum 11
954
+ */
955
+ max_dogs_per_page?: number;
956
+ /**
957
+ * @minimum 0.5
958
+ * @maximum 10
959
+ */
960
+ delay?: number;
961
+ /**
962
+ * @minimum 1
963
+ * @maximum 5
964
+ */
965
+ generations?: number;
966
+ /**
967
+ * @minimum 1
968
+ * @maximum 600
969
+ */
970
+ countdown_between_pages?: number;
971
+ }
972
+ /**
973
+ * Сериализатор для импорта одной собаки
974
+ */
975
+ export interface ImportZooportalDogRequest {
976
+ /**
977
+ * ID собаки на Zooportal (например: 17516431)
978
+ * @minLength 1
979
+ * @maxLength 20
980
+ */
981
+ zooportal_id: string;
982
+ }
983
+ /**
984
+ * Сериализатор для импорта страницы поиска
985
+ */
986
+ export interface ImportZooportalPageRequest {
987
+ /**
988
+ * Номер страницы поиска (от 1 и выше)
989
+ * @minimum 1
990
+ */
991
+ page_num: number;
992
+ /**
993
+ * Максимальное количество собак (по умолчанию 10)
994
+ * @minimum 1
995
+ * @maximum 11
996
+ */
997
+ max_dogs?: number;
998
+ /**
999
+ * Задержка между собаками в секундах (по умолчанию 2.0)
1000
+ * @minimum 0.5
1001
+ * @maximum 10
1002
+ */
1003
+ delay?: number;
1004
+ }
1005
+ /**
1006
+ * Сериализатор для импорта диапазона страниц
1007
+ */
1008
+ export interface ImportZooportalRangeRequest {
1009
+ /**
1010
+ * Начальная страница (включительно)
1011
+ * @minimum 1
1012
+ */
1013
+ start_page: number;
1014
+ /**
1015
+ * Конечная страница (включительно)
1016
+ * @minimum 1
1017
+ */
1018
+ end_page: number;
1019
+ /**
1020
+ * Максимум собак на странице (по умолчанию 10)
1021
+ * @minimum 1
1022
+ * @maximum 11
1023
+ */
1024
+ max_dogs_per_page?: number;
1025
+ /**
1026
+ * Задержка между собаками (по умолчанию 2.0)
1027
+ * @minimum 0.5
1028
+ * @maximum 10
1029
+ */
1030
+ delay?: number;
1031
+ }
1032
+ export interface Judge {
1033
+ readonly id: number;
1034
+ /** @maxLength 200 */
1035
+ name: string;
1036
+ /** @maxLength 200 */
1037
+ rank?: string;
1038
+ /** @maxLength 200 */
1039
+ email?: string;
1040
+ /** @nullable */
1041
+ photo?: string | null;
1042
+ /** @maxLength 1000 */
1043
+ materials?: string;
1044
+ /** @nullable */
1045
+ judge_id?: number | null;
1046
+ }
1047
+ export interface JudgeDetails {
1048
+ readonly id: number;
1049
+ /** @maxLength 200 */
1050
+ title: string;
1051
+ info?: unknown;
1052
+ additional_info_title?: unknown;
1053
+ additional_info_text?: unknown;
1054
+ work_directions?: unknown;
1055
+ initiatives?: unknown;
1056
+ /** @maxLength 200 */
1057
+ sidebar_text: string;
1058
+ sidebar_achievements?: unknown;
1059
+ /** @maxLength 200 */
1060
+ kennel_url?: string;
1061
+ /** @nullable */
1062
+ kennel?: number | null;
1063
+ }
1064
+ export interface Kennel {
1065
+ readonly id: number;
1066
+ /** @maxLength 200 */
1067
+ name: string;
1068
+ /** @maxLength 200 */
1069
+ prefix?: string;
1070
+ /** @maxLength 200 */
1071
+ site_url?: string;
1072
+ socials?: unknown;
1073
+ monitor_enabled?: boolean;
1074
+ /** @nullable */
1075
+ last_check_at?: string | null;
1076
+ /** @nullable */
1077
+ last_screenshot?: string | null;
1078
+ readonly created_at: string;
1079
+ owner: number;
1080
+ }
1081
+ export interface KennelRequest {
1082
+ /**
1083
+ * @minLength 1
1084
+ * @maxLength 200
1085
+ */
1086
+ name: string;
1087
+ /** @maxLength 200 */
1088
+ prefix?: string;
1089
+ /** @maxLength 200 */
1090
+ site_url?: string;
1091
+ socials?: unknown;
1092
+ monitor_enabled?: boolean;
1093
+ /** @nullable */
1094
+ last_check_at?: string | null;
1095
+ /** @nullable */
1096
+ last_screenshot?: Blob | null;
1097
+ owner: number;
1098
+ }
1099
+ /**
1100
+ * * `announced` - announced
1101
+ * `born` - born
1102
+ * `sold` - sold
1103
+ */
1104
+ export type LitterStatusEnum = typeof LitterStatusEnum[keyof typeof LitterStatusEnum];
1105
+ export declare const LitterStatusEnum: {
1106
+ readonly announced: "announced";
1107
+ readonly born: "born";
1108
+ readonly sold: "sold";
1109
+ };
1110
+ export interface LitterRequest {
1111
+ /** @nullable */
1112
+ whelped_at?: string | null;
1113
+ /**
1114
+ * @minimum -9223372036854776000
1115
+ * @maximum 9223372036854776000
1116
+ * @nullable
1117
+ */
1118
+ puppies_count?: number | null;
1119
+ /** @maxLength 200 */
1120
+ notes_key?: string;
1121
+ status?: LitterStatusEnum;
1122
+ kennel: number;
1123
+ sire: number;
1124
+ dam: number;
1125
+ }
1126
+ export interface LoginRequestRequest {
1127
+ /**
1128
+ * Email пользователя
1129
+ * @minLength 1
1130
+ */
1131
+ email: string;
1132
+ /**
1133
+ * Пароль
1134
+ * @minLength 1
1135
+ */
1136
+ password: string;
1137
+ }
1138
+ export interface LoginUser {
1139
+ email: string;
1140
+ name: string;
1141
+ is_nkp_member: boolean;
1142
+ }
1143
+ export interface LoginSuccess {
1144
+ success: boolean;
1145
+ user: LoginUser;
1146
+ }
1147
+ /**
1148
+ * * `physical` - physical
1149
+ * `legal` - legal
1150
+ */
1151
+ export type MembershipTypeEnum = typeof MembershipTypeEnum[keyof typeof MembershipTypeEnum];
1152
+ export declare const MembershipTypeEnum: {
1153
+ readonly physical: "physical";
1154
+ readonly legal: "legal";
1155
+ };
1156
+ export type NullEnum = typeof NullEnum[keyof typeof NullEnum];
1157
+ export declare const NullEnum: {};
1158
+ export interface Page {
1159
+ readonly id: number;
1160
+ /**
1161
+ * @maxLength 50
1162
+ * @pattern ^[-a-zA-Z0-9_]+$
1163
+ */
1164
+ slug: string;
1165
+ /** @maxLength 200 */
1166
+ title_key: string;
1167
+ sections?: unknown;
1168
+ is_published?: boolean;
1169
+ readonly created_at: string;
1170
+ readonly updated_at: string;
1171
+ }
1172
+ export interface PaginatedAchievementList {
1173
+ count?: number;
1174
+ /** @nullable */
1175
+ next?: string | null;
1176
+ /** @nullable */
1177
+ previous?: string | null;
1178
+ results?: Achievement[];
1179
+ }
1180
+ export interface PaginatedApplicationList {
1181
+ count?: number;
1182
+ /** @nullable */
1183
+ next?: string | null;
1184
+ /** @nullable */
1185
+ previous?: string | null;
1186
+ results?: Application[];
1187
+ }
1188
+ export interface PaginatedBoardMemberList {
1189
+ count?: number;
1190
+ /** @nullable */
1191
+ next?: string | null;
1192
+ /** @nullable */
1193
+ previous?: string | null;
1194
+ results?: BoardMember[];
1195
+ }
1196
+ export interface PaginatedBreedArticleList {
1197
+ count?: number;
1198
+ /** @nullable */
1199
+ next?: string | null;
1200
+ /** @nullable */
1201
+ previous?: string | null;
1202
+ results?: BreedArticle[];
1203
+ }
1204
+ export interface PaginatedBreedStandardList {
1205
+ count?: number;
1206
+ /** @nullable */
1207
+ next?: string | null;
1208
+ /** @nullable */
1209
+ previous?: string | null;
1210
+ results?: BreedStandard[];
1211
+ }
1212
+ export interface PaginatedBreederList {
1213
+ count?: number;
1214
+ /** @nullable */
1215
+ next?: string | null;
1216
+ /** @nullable */
1217
+ previous?: string | null;
1218
+ results?: Breeder[];
1219
+ }
1220
+ export interface PaginatedClubDocumentList {
1221
+ count?: number;
1222
+ /** @nullable */
1223
+ next?: string | null;
1224
+ /** @nullable */
1225
+ previous?: string | null;
1226
+ results?: ClubDocument[];
1227
+ }
1228
+ export interface PaginatedContentDictionaryList {
1229
+ count?: number;
1230
+ /** @nullable */
1231
+ next?: string | null;
1232
+ /** @nullable */
1233
+ previous?: string | null;
1234
+ results?: ContentDictionary[];
1235
+ }
1236
+ export interface PaginatedDogList {
1237
+ count?: number;
1238
+ /** @nullable */
1239
+ next?: string | null;
1240
+ /** @nullable */
1241
+ previous?: string | null;
1242
+ results?: Dog[];
1243
+ }
1244
+ export interface PaginatedDogListList {
1245
+ count?: number;
1246
+ /** @nullable */
1247
+ next?: string | null;
1248
+ /** @nullable */
1249
+ previous?: string | null;
1250
+ results?: DogList[];
1251
+ }
1252
+ export interface PaginatedEventList {
1253
+ count?: number;
1254
+ /** @nullable */
1255
+ next?: string | null;
1256
+ /** @nullable */
1257
+ previous?: string | null;
1258
+ results?: Event[];
1259
+ }
1260
+ export interface PaginatedEventReportList {
1261
+ count?: number;
1262
+ /** @nullable */
1263
+ next?: string | null;
1264
+ /** @nullable */
1265
+ previous?: string | null;
1266
+ results?: EventReport[];
1267
+ }
1268
+ export interface PaginatedGalleryList {
1269
+ count?: number;
1270
+ /** @nullable */
1271
+ next?: string | null;
1272
+ /** @nullable */
1273
+ previous?: string | null;
1274
+ results?: Gallery[];
1275
+ }
1276
+ export interface PaginatedJudgeDetailsList {
1277
+ count?: number;
1278
+ /** @nullable */
1279
+ next?: string | null;
1280
+ /** @nullable */
1281
+ previous?: string | null;
1282
+ results?: JudgeDetails[];
1283
+ }
1284
+ export interface PaginatedJudgeList {
1285
+ count?: number;
1286
+ /** @nullable */
1287
+ next?: string | null;
1288
+ /** @nullable */
1289
+ previous?: string | null;
1290
+ results?: Judge[];
1291
+ }
1292
+ export interface PaginatedKennelList {
1293
+ count?: number;
1294
+ /** @nullable */
1295
+ next?: string | null;
1296
+ /** @nullable */
1297
+ previous?: string | null;
1298
+ results?: Kennel[];
1299
+ }
1300
+ export interface PaginatedLitterList {
1301
+ count?: number;
1302
+ /** @nullable */
1303
+ next?: string | null;
1304
+ /** @nullable */
1305
+ previous?: string | null;
1306
+ results?: Litter[];
1307
+ }
1308
+ export interface PaginatedMedicalRecordList {
1309
+ count?: number;
1310
+ /** @nullable */
1311
+ next?: string | null;
1312
+ /** @nullable */
1313
+ previous?: string | null;
1314
+ results?: MedicalRecord[];
1315
+ }
1316
+ export interface PaginatedNewsList {
1317
+ count?: number;
1318
+ /** @nullable */
1319
+ next?: string | null;
1320
+ /** @nullable */
1321
+ previous?: string | null;
1322
+ results?: News[];
1323
+ }
1324
+ export interface PaginatedOwnerList {
1325
+ count?: number;
1326
+ /** @nullable */
1327
+ next?: string | null;
1328
+ /** @nullable */
1329
+ previous?: string | null;
1330
+ results?: Owner[];
1331
+ }
1332
+ export interface PaginatedPageList {
1333
+ count?: number;
1334
+ /** @nullable */
1335
+ next?: string | null;
1336
+ /** @nullable */
1337
+ previous?: string | null;
1338
+ results?: Page[];
1339
+ }
1340
+ export interface PaginatedTitleList {
1341
+ count?: number;
1342
+ /** @nullable */
1343
+ next?: string | null;
1344
+ /** @nullable */
1345
+ previous?: string | null;
1346
+ results?: Title[];
1347
+ }
1348
+ export interface WorkingGroup {
1349
+ readonly id: number;
1350
+ /** @maxLength 200 */
1351
+ name: string;
1352
+ readonly members: readonly BoardMember[];
1353
+ }
1354
+ export interface PaginatedWorkingGroupList {
1355
+ count?: number;
1356
+ /** @nullable */
1357
+ next?: string | null;
1358
+ /** @nullable */
1359
+ previous?: string | null;
1360
+ results?: WorkingGroup[];
1361
+ }
1362
+ export interface PatchedApplicationRequest {
1363
+ application_type?: ApplicationTypeEnum;
1364
+ payload?: unknown;
1365
+ status?: ApplicationStatusEnum;
1366
+ history?: unknown;
1367
+ user?: number;
1368
+ }
1369
+ export declare const PatchedDogRequestSex: {
1370
+ readonly '': "";
1371
+ readonly male: "male";
1372
+ readonly female: "female";
1373
+ };
1374
+ export interface PatchedDogRequest {
1375
+ /**
1376
+ * @minLength 1
1377
+ * @maxLength 200
1378
+ */
1379
+ name?: string;
1380
+ /** @maxLength 200 */
1381
+ registered_name?: string;
1382
+ sex?: typeof PatchedDogRequestSex[keyof typeof PatchedDogRequestSex];
1383
+ /** @nullable */
1384
+ date_of_birth?: string | null;
1385
+ /** @maxLength 200 */
1386
+ pedigree_number?: string;
1387
+ /** @maxLength 200 */
1388
+ microchip?: string;
1389
+ titles?: unknown;
1390
+ is_champion?: boolean;
1391
+ photos?: unknown;
1392
+ owner?: number;
1393
+ /** @nullable */
1394
+ kennel?: number | null;
1395
+ /** @nullable */
1396
+ sire?: number | null;
1397
+ /** @nullable */
1398
+ dam?: number | null;
1399
+ }
1400
+ export interface PatchedKennelRequest {
1401
+ /**
1402
+ * @minLength 1
1403
+ * @maxLength 200
1404
+ */
1405
+ name?: string;
1406
+ /** @maxLength 200 */
1407
+ prefix?: string;
1408
+ /** @maxLength 200 */
1409
+ site_url?: string;
1410
+ socials?: unknown;
1411
+ monitor_enabled?: boolean;
1412
+ /** @nullable */
1413
+ last_check_at?: string | null;
1414
+ /** @nullable */
1415
+ last_screenshot?: Blob | null;
1416
+ owner?: number;
1417
+ }
1418
+ export interface PatchedLitterRequest {
1419
+ /** @nullable */
1420
+ whelped_at?: string | null;
1421
+ /**
1422
+ * @minimum -9223372036854776000
1423
+ * @maximum 9223372036854776000
1424
+ * @nullable
1425
+ */
1426
+ puppies_count?: number | null;
1427
+ /** @maxLength 200 */
1428
+ notes_key?: string;
1429
+ status?: LitterStatusEnum;
1430
+ kennel?: number;
1431
+ sire?: number;
1432
+ dam?: number;
1433
+ }
1434
+ /**
1435
+ * Рекурсивное дерево родословной.
1436
+ */
1437
+ export interface Pedigree {
1438
+ readonly id: number;
1439
+ /**
1440
+ * @maxLength 255
1441
+ * @nullable
1442
+ */
1443
+ uuid?: string | null;
1444
+ readonly display_name: string;
1445
+ /**
1446
+ * @maxLength 500
1447
+ * @nullable
1448
+ */
1449
+ registered_name?: string | null;
1450
+ /**
1451
+ * @maxLength 255
1452
+ * @nullable
1453
+ */
1454
+ call_name?: string | null;
1455
+ /**
1456
+ * @minimum -9223372036854776000
1457
+ * @maximum 9223372036854776000
1458
+ */
1459
+ sex: Sex6bbEnum;
1460
+ /**
1461
+ * @minimum -9223372036854776000
1462
+ * @maximum 9223372036854776000
1463
+ * @nullable
1464
+ */
1465
+ year_of_birth?: number | null;
1466
+ /** @nullable */
1467
+ date_of_birth?: string | null;
1468
+ /**
1469
+ * @maxLength 1000
1470
+ * @nullable
1471
+ */
1472
+ photo_url?: string | null;
1473
+ /**
1474
+ * @maxLength 255
1475
+ * @nullable
1476
+ */
1477
+ color?: string | null;
1478
+ /**
1479
+ * @maxLength 255
1480
+ * @nullable
1481
+ */
1482
+ land_of_birth?: string | null;
1483
+ /**
1484
+ * @maxLength 500
1485
+ * @nullable
1486
+ */
1487
+ prefix_titles?: string | null;
1488
+ /**
1489
+ * @maxLength 500
1490
+ * @nullable
1491
+ */
1492
+ suffix_titles?: string | null;
1493
+ /** @nullable */
1494
+ coi?: number | null;
1495
+ readonly dam: string;
1496
+ readonly sire: string;
1497
+ }
1498
+ export interface RecalculateAllCoiRequestRequest {
1499
+ /** Глубина расчёта (1–10, по умолчанию 5) */
1500
+ generations?: number;
1501
+ /** True — только собаки с COI IS NULL */
1502
+ only_missing?: boolean;
1503
+ /** Учитывать COI предков */
1504
+ use_ancestor_coi?: boolean;
1505
+ /** Размер батча (10–500) */
1506
+ batch_size?: number;
1507
+ }
1508
+ /**
1509
+ * Ответ с task_id
1510
+ */
1511
+ export interface TaskResponse {
1512
+ task_id: string;
1513
+ status: string;
1514
+ message: string;
1515
+ check_status_url: string;
1516
+ }
1517
+ export type TaskStatusResponseProgress = {
1518
+ [key: string]: unknown;
1519
+ };
1520
+ export type TaskStatusResponseResult = {
1521
+ [key: string]: unknown;
1522
+ };
1523
+ /**
1524
+ * Ответ со статусом задачи
1525
+ */
1526
+ export interface TaskStatusResponse {
1527
+ task_id: string;
1528
+ status: string;
1529
+ message?: string;
1530
+ progress?: TaskStatusResponseProgress;
1531
+ result?: TaskStatusResponseResult;
1532
+ error?: string;
1533
+ }
1534
+ export declare const UserProfileMembershipType: {
1535
+ readonly '': "";
1536
+ readonly physical: "physical";
1537
+ readonly legal: "legal";
1538
+ };
1539
+ export interface UserProfile {
1540
+ readonly id: number;
1541
+ /** @maxLength 254 */
1542
+ email: string;
1543
+ /** @maxLength 100 */
1544
+ first_name?: string;
1545
+ /** @maxLength 100 */
1546
+ last_name?: string;
1547
+ /** @maxLength 20 */
1548
+ phone?: string;
1549
+ /** @maxLength 100 */
1550
+ city?: string;
1551
+ is_nkp_member?: boolean;
1552
+ membership_type?: typeof UserProfileMembershipType[keyof typeof UserProfileMembershipType] | null;
1553
+ /** @nullable */
1554
+ membership_expires_at?: string | null;
1555
+ }
1556
+ export declare const UserProfileRequestMembershipType: {
1557
+ readonly '': "";
1558
+ readonly physical: "physical";
1559
+ readonly legal: "legal";
1560
+ };
1561
+ export interface UserProfileRequest {
1562
+ /**
1563
+ * @minLength 1
1564
+ * @maxLength 254
1565
+ */
1566
+ email: string;
1567
+ /** @maxLength 100 */
1568
+ first_name?: string;
1569
+ /** @maxLength 100 */
1570
+ last_name?: string;
1571
+ /** @maxLength 20 */
1572
+ phone?: string;
1573
+ /** @maxLength 100 */
1574
+ city?: string;
1575
+ is_nkp_member?: boolean;
1576
+ membership_type?: typeof UserProfileRequestMembershipType[keyof typeof UserProfileRequestMembershipType] | null;
1577
+ /** @nullable */
1578
+ membership_expires_at?: string | null;
1579
+ }
1580
+ export type BreedArticlesListParams = {
1581
+ /**
1582
+ * Категория статьи
1583
+ */
1584
+ category?: string;
1585
+ /**
1586
+ * A page number within the paginated result set.
1587
+ */
1588
+ page?: number;
1589
+ };
1590
+ export type BreedStandardsListParams = {
1591
+ /**
1592
+ * A page number within the paginated result set.
1593
+ */
1594
+ page?: number;
1595
+ };
1596
+ export type BreedersListParams = {
1597
+ /**
1598
+ * A page number within the paginated result set.
1599
+ */
1600
+ page?: number;
1601
+ };
1602
+ export type ClubBoardListParams = {
1603
+ /**
1604
+ * A page number within the paginated result set.
1605
+ */
1606
+ page?: number;
1607
+ };
1608
+ export type ClubDocumentsListParams = {
1609
+ /**
1610
+ * A page number within the paginated result set.
1611
+ */
1612
+ page?: number;
1613
+ };
1614
+ export type DictListParams = {
1615
+ /**
1616
+ * Поиск по ключу (частичное совпадение)
1617
+ */
1618
+ key?: string;
1619
+ /**
1620
+ * Фильтр по странице
1621
+ */
1622
+ page?: string;
1623
+ };
1624
+ export type DictByKeyRetrieveParams = {
1625
+ /**
1626
+ * Точный ключ записи
1627
+ */
1628
+ key: string;
1629
+ };
1630
+ export type DogsListParams = {
1631
+ /**
1632
+ * A page number within the paginated result set.
1633
+ */
1634
+ page?: number;
1635
+ /**
1636
+ * Поиск по кличке (частичное совпадение)
1637
+ */
1638
+ q?: string;
1639
+ /**
1640
+ * Фильтр по полу (1 — кобель, 2 — сука)
1641
+ */
1642
+ sex?: number;
1643
+ /**
1644
+ * Фильтр по году рождения
1645
+ */
1646
+ year?: number;
1647
+ };
1648
+ export type DogsOffspringListParams = {
1649
+ /**
1650
+ * A page number within the paginated result set.
1651
+ */
1652
+ page?: number;
1653
+ };
1654
+ export type DogsPedigreeRetrieveParams = {
1655
+ /**
1656
+ * Глубина дерева (1–10, по умолчанию 3)
1657
+ */
1658
+ generations?: number;
1659
+ };
1660
+ export type DogsSiblingsListParams = {
1661
+ /**
1662
+ * A page number within the paginated result set.
1663
+ */
1664
+ page?: number;
1665
+ };
1666
+ export type DogsSearchListParams = {
1667
+ /**
1668
+ * A page number within the paginated result set.
1669
+ */
1670
+ page?: number;
1671
+ /**
1672
+ * Строка поиска по кличке
1673
+ */
1674
+ q: string;
1675
+ };
1676
+ export type EventReportsListParams = {
1677
+ /**
1678
+ * A page number within the paginated result set.
1679
+ */
1680
+ page?: number;
1681
+ };
1682
+ export type EventsListParams = {
1683
+ /**
1684
+ * От даты (YYYY-MM-DD)
1685
+ */
1686
+ from_date?: string;
1687
+ /**
1688
+ * A page number within the paginated result set.
1689
+ */
1690
+ page?: number;
1691
+ /**
1692
+ * До даты (YYYY-MM-DD)
1693
+ */
1694
+ to_date?: string;
1695
+ /**
1696
+ * Тип мероприятия
1697
+ */
1698
+ type?: string;
1699
+ };
1700
+ export type GalleriesListParams = {
1701
+ /**
1702
+ * A page number within the paginated result set.
1703
+ */
1704
+ page?: number;
1705
+ };
1706
+ export type GalleriesHighlightsListParams = {
1707
+ /**
1708
+ * A page number within the paginated result set.
1709
+ */
1710
+ page?: number;
1711
+ };
1712
+ export type JudgeDetailsListParams = {
1713
+ /**
1714
+ * A page number within the paginated result set.
1715
+ */
1716
+ page?: number;
1717
+ };
1718
+ export type JudgesListParams = {
1719
+ /**
1720
+ * A page number within the paginated result set.
1721
+ */
1722
+ page?: number;
1723
+ };
1724
+ export type LittersListParams = {
1725
+ /**
1726
+ * A page number within the paginated result set.
1727
+ */
1728
+ page?: number;
1729
+ };
1730
+ export type MeAchievementsListParams = {
1731
+ /**
1732
+ * A page number within the paginated result set.
1733
+ */
1734
+ page?: number;
1735
+ };
1736
+ export type MeApplicationsListParams = {
1737
+ /**
1738
+ * A page number within the paginated result set.
1739
+ */
1740
+ page?: number;
1741
+ };
1742
+ export type MeDogsListParams = {
1743
+ /**
1744
+ * A page number within the paginated result set.
1745
+ */
1746
+ page?: number;
1747
+ };
1748
+ export type MeDogsChampionsListParams = {
1749
+ /**
1750
+ * A page number within the paginated result set.
1751
+ */
1752
+ page?: number;
1753
+ };
1754
+ export type MeKennelsListParams = {
1755
+ /**
1756
+ * A page number within the paginated result set.
1757
+ */
1758
+ page?: number;
1759
+ };
1760
+ export type MeLittersListParams = {
1761
+ /**
1762
+ * A page number within the paginated result set.
1763
+ */
1764
+ page?: number;
1765
+ };
1766
+ export type MedicalRecordsListParams = {
1767
+ /**
1768
+ * A page number within the paginated result set.
1769
+ */
1770
+ page?: number;
1771
+ };
1772
+ export type NewsListParams = {
1773
+ /**
1774
+ * Только избранные новости
1775
+ */
1776
+ featured?: boolean;
1777
+ /**
1778
+ * A page number within the paginated result set.
1779
+ */
1780
+ page?: number;
1781
+ /**
1782
+ * Фильтр по тегу
1783
+ */
1784
+ tag?: string;
1785
+ };
1786
+ export type OwnersListParams = {
1787
+ /**
1788
+ * A page number within the paginated result set.
1789
+ */
1790
+ page?: number;
1791
+ };
1792
+ export type PagesListParams = {
1793
+ /**
1794
+ * A page number within the paginated result set.
1795
+ */
1796
+ page?: number;
1797
+ };
1798
+ export type TitlesListParams = {
1799
+ /**
1800
+ * A page number within the paginated result set.
1801
+ */
1802
+ page?: number;
1803
+ };
1804
+ export type WorkingGroupsListParams = {
1805
+ /**
1806
+ * A page number within the paginated result set.
1807
+ */
1808
+ page?: number;
1809
+ };