@blackcode_sa/metaestetics-api 1.5.7 → 1.5.9
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.
- package/dist/index.d.mts +394 -1
- package/dist/index.d.ts +394 -1
- package/dist/index.js +853 -89
- package/dist/index.mjs +895 -89
- package/package.json +1 -1
- package/src/index.ts +87 -59
package/dist/index.d.ts
CHANGED
|
@@ -3439,6 +3439,395 @@ declare class BaseService {
|
|
|
3439
3439
|
protected generateId(): string;
|
|
3440
3440
|
}
|
|
3441
3441
|
|
|
3442
|
+
/**
|
|
3443
|
+
* Servis za upravljanje kategorijama procedura.
|
|
3444
|
+
* Kategorije su prvi nivo organizacije nakon procedure family (aesthetics/surgery).
|
|
3445
|
+
*
|
|
3446
|
+
* @example
|
|
3447
|
+
* const categoryService = new CategoryService();
|
|
3448
|
+
*
|
|
3449
|
+
* // Kreiranje nove kategorije
|
|
3450
|
+
* const category = await categoryService.create({
|
|
3451
|
+
* name: "Injectables",
|
|
3452
|
+
* family: ProcedureFamily.AESTHETICS
|
|
3453
|
+
* });
|
|
3454
|
+
*/
|
|
3455
|
+
declare class CategoryService extends BaseService {
|
|
3456
|
+
/**
|
|
3457
|
+
* Referenca na Firestore kolekciju kategorija
|
|
3458
|
+
*/
|
|
3459
|
+
private get categoriesRef();
|
|
3460
|
+
/**
|
|
3461
|
+
* Kreira novu kategoriju u sistemu
|
|
3462
|
+
* @param category - Podaci za novu kategoriju
|
|
3463
|
+
* @returns Kreirana kategorija sa generisanim ID-em
|
|
3464
|
+
*/
|
|
3465
|
+
create(category: Omit<Category, "id" | "createdAt" | "updatedAt">): Promise<{
|
|
3466
|
+
isActive: boolean;
|
|
3467
|
+
updatedAt: Date;
|
|
3468
|
+
name: string;
|
|
3469
|
+
description: string;
|
|
3470
|
+
createdAt: Date;
|
|
3471
|
+
family: ProcedureFamily;
|
|
3472
|
+
id: string;
|
|
3473
|
+
}>;
|
|
3474
|
+
/**
|
|
3475
|
+
* Vraća sve aktivne kategorije
|
|
3476
|
+
* @returns Lista aktivnih kategorija
|
|
3477
|
+
*/
|
|
3478
|
+
getAll(): Promise<Category[]>;
|
|
3479
|
+
/**
|
|
3480
|
+
* Vraća sve aktivne kategorije za određenu familiju procedura
|
|
3481
|
+
* @param family - Familija procedura (aesthetics/surgery)
|
|
3482
|
+
* @returns Lista kategorija koje pripadaju traženoj familiji
|
|
3483
|
+
*/
|
|
3484
|
+
getAllByFamily(family: ProcedureFamily): Promise<Category[]>;
|
|
3485
|
+
/**
|
|
3486
|
+
* Ažurira postojeću kategoriju
|
|
3487
|
+
* @param id - ID kategorije koja se ažurira
|
|
3488
|
+
* @param category - Novi podaci za kategoriju
|
|
3489
|
+
* @returns Ažurirana kategorija
|
|
3490
|
+
*/
|
|
3491
|
+
update(id: string, category: Partial<Omit<Category, "id" | "createdAt">>): Promise<Category | null>;
|
|
3492
|
+
/**
|
|
3493
|
+
* Soft delete kategorije (postavlja isActive na false)
|
|
3494
|
+
* @param id - ID kategorije koja se briše
|
|
3495
|
+
*/
|
|
3496
|
+
delete(id: string): Promise<void>;
|
|
3497
|
+
/**
|
|
3498
|
+
* Vraća kategoriju po ID-u
|
|
3499
|
+
* @param id - ID tražene kategorije
|
|
3500
|
+
* @returns Kategorija ili null ako ne postoji
|
|
3501
|
+
*/
|
|
3502
|
+
getById(id: string): Promise<Category | null>;
|
|
3503
|
+
}
|
|
3504
|
+
|
|
3505
|
+
/**
|
|
3506
|
+
* Servis za upravljanje podkategorijama procedura.
|
|
3507
|
+
* Podkategorije su drugi nivo organizacije i pripadaju određenoj kategoriji.
|
|
3508
|
+
*
|
|
3509
|
+
* @example
|
|
3510
|
+
* const subcategoryService = new SubcategoryService();
|
|
3511
|
+
*
|
|
3512
|
+
* // Kreiranje nove podkategorije
|
|
3513
|
+
* const subcategory = await subcategoryService.create(categoryId, {
|
|
3514
|
+
* name: "Anti-Wrinkle",
|
|
3515
|
+
* description: "Treatments targeting facial wrinkles"
|
|
3516
|
+
* });
|
|
3517
|
+
*/
|
|
3518
|
+
declare class SubcategoryService extends BaseService {
|
|
3519
|
+
/**
|
|
3520
|
+
* Vraća referencu na Firestore kolekciju podkategorija za određenu kategoriju
|
|
3521
|
+
* @param categoryId - ID roditeljske kategorije
|
|
3522
|
+
*/
|
|
3523
|
+
private getSubcategoriesRef;
|
|
3524
|
+
/**
|
|
3525
|
+
* Kreira novu podkategoriju u okviru kategorije
|
|
3526
|
+
* @param categoryId - ID kategorije kojoj će pripadati nova podkategorija
|
|
3527
|
+
* @param subcategory - Podaci za novu podkategoriju
|
|
3528
|
+
* @returns Kreirana podkategorija sa generisanim ID-em
|
|
3529
|
+
*/
|
|
3530
|
+
create(categoryId: string, subcategory: Omit<Subcategory, "id" | "createdAt" | "updatedAt">): Promise<{
|
|
3531
|
+
isActive: boolean;
|
|
3532
|
+
updatedAt: Date;
|
|
3533
|
+
name: string;
|
|
3534
|
+
description?: string | undefined;
|
|
3535
|
+
createdAt: Date;
|
|
3536
|
+
categoryId: string;
|
|
3537
|
+
id: string;
|
|
3538
|
+
}>;
|
|
3539
|
+
/**
|
|
3540
|
+
* Vraća sve aktivne podkategorije za određenu kategoriju
|
|
3541
|
+
* @param categoryId - ID kategorije čije podkategorije tražimo
|
|
3542
|
+
* @returns Lista aktivnih podkategorija
|
|
3543
|
+
*/
|
|
3544
|
+
getAllByCategoryId(categoryId: string): Promise<Subcategory[]>;
|
|
3545
|
+
/**
|
|
3546
|
+
* Ažurira postojeću podkategoriju
|
|
3547
|
+
* @param categoryId - ID kategorije kojoj pripada podkategorija
|
|
3548
|
+
* @param subcategoryId - ID podkategorije koja se ažurira
|
|
3549
|
+
* @param subcategory - Novi podaci za podkategoriju
|
|
3550
|
+
* @returns Ažurirana podkategorija
|
|
3551
|
+
*/
|
|
3552
|
+
update(categoryId: string, subcategoryId: string, subcategory: Partial<Omit<Subcategory, "id" | "createdAt" | "categoryId">>): Promise<Subcategory | null>;
|
|
3553
|
+
/**
|
|
3554
|
+
* Soft delete podkategorije (postavlja isActive na false)
|
|
3555
|
+
* @param categoryId - ID kategorije kojoj pripada podkategorija
|
|
3556
|
+
* @param subcategoryId - ID podkategorije koja se briše
|
|
3557
|
+
*/
|
|
3558
|
+
delete(categoryId: string, subcategoryId: string): Promise<void>;
|
|
3559
|
+
/**
|
|
3560
|
+
* Vraća podkategoriju po ID-u
|
|
3561
|
+
* @param categoryId - ID kategorije kojoj pripada podkategorija
|
|
3562
|
+
* @param subcategoryId - ID tražene podkategorije
|
|
3563
|
+
* @returns Podkategorija ili null ako ne postoji
|
|
3564
|
+
*/
|
|
3565
|
+
getById(categoryId: string, subcategoryId: string): Promise<Subcategory | null>;
|
|
3566
|
+
}
|
|
3567
|
+
|
|
3568
|
+
/**
|
|
3569
|
+
* Servis za upravljanje tehnologijama i njihovim zahtevima.
|
|
3570
|
+
* Tehnologije su treći nivo organizacije i pripadaju određenoj podkategoriji.
|
|
3571
|
+
* Svaka tehnologija može imati svoje specifične zahteve pre i posle procedure.
|
|
3572
|
+
*
|
|
3573
|
+
* @example
|
|
3574
|
+
* const technologyService = new TechnologyService();
|
|
3575
|
+
*
|
|
3576
|
+
* // Kreiranje nove tehnologije
|
|
3577
|
+
* const technology = await technologyService.create(categoryId, subcategoryId, {
|
|
3578
|
+
* name: "Botulinum Toxin",
|
|
3579
|
+
* description: "Neurotoxin injections for wrinkle reduction"
|
|
3580
|
+
* });
|
|
3581
|
+
*
|
|
3582
|
+
* // Dodavanje zahteva
|
|
3583
|
+
* await technologyService.addRequirement(categoryId, subcategoryId, technology.id, {
|
|
3584
|
+
* type: "pre",
|
|
3585
|
+
* name: "Stay Hydrated",
|
|
3586
|
+
* description: "Drink plenty of water"
|
|
3587
|
+
* });
|
|
3588
|
+
*/
|
|
3589
|
+
declare class TechnologyService extends BaseService {
|
|
3590
|
+
/**
|
|
3591
|
+
* Vraća referencu na Firestore kolekciju tehnologija za određenu podkategoriju
|
|
3592
|
+
* @param categoryId - ID kategorije
|
|
3593
|
+
* @param subcategoryId - ID podkategorije
|
|
3594
|
+
*/
|
|
3595
|
+
private getTechnologiesRef;
|
|
3596
|
+
/**
|
|
3597
|
+
* Kreira novu tehnologiju u okviru podkategorije
|
|
3598
|
+
* @param categoryId - ID kategorije
|
|
3599
|
+
* @param subcategoryId - ID podkategorije
|
|
3600
|
+
* @param technology - Podaci za novu tehnologiju
|
|
3601
|
+
* @returns Kreirana tehnologija sa generisanim ID-em
|
|
3602
|
+
*/
|
|
3603
|
+
create(categoryId: string, subcategoryId: string, technology: Omit<Technology, "id" | "createdAt" | "updatedAt">): Promise<{
|
|
3604
|
+
isActive: boolean;
|
|
3605
|
+
updatedAt: Date;
|
|
3606
|
+
blockingConditions: BlockingCondition[];
|
|
3607
|
+
contraindications: Contraindication[];
|
|
3608
|
+
name: string;
|
|
3609
|
+
description: string;
|
|
3610
|
+
createdAt: Date;
|
|
3611
|
+
technicalDetails?: string | undefined;
|
|
3612
|
+
subcategoryId: string;
|
|
3613
|
+
requirements: {
|
|
3614
|
+
pre: Requirement[];
|
|
3615
|
+
post: Requirement[];
|
|
3616
|
+
};
|
|
3617
|
+
documentationTemplates?: DocumentTemplate[] | undefined;
|
|
3618
|
+
benefits: TreatmentBenefit[];
|
|
3619
|
+
certificationRequirement: CertificationRequirement;
|
|
3620
|
+
id: string;
|
|
3621
|
+
}>;
|
|
3622
|
+
/**
|
|
3623
|
+
* Vraća sve aktivne tehnologije za određenu podkategoriju
|
|
3624
|
+
* @param categoryId - ID kategorije
|
|
3625
|
+
* @param subcategoryId - ID podkategorije
|
|
3626
|
+
* @returns Lista aktivnih tehnologija
|
|
3627
|
+
*/
|
|
3628
|
+
getAllBySubcategoryId(categoryId: string, subcategoryId: string): Promise<Technology[]>;
|
|
3629
|
+
/**
|
|
3630
|
+
* Ažurira postojeću tehnologiju
|
|
3631
|
+
* @param categoryId - ID kategorije
|
|
3632
|
+
* @param subcategoryId - ID podkategorije
|
|
3633
|
+
* @param technologyId - ID tehnologije
|
|
3634
|
+
* @param technology - Novi podaci za tehnologiju
|
|
3635
|
+
* @returns Ažurirana tehnologija
|
|
3636
|
+
*/
|
|
3637
|
+
update(categoryId: string, subcategoryId: string, technologyId: string, technology: Partial<Omit<Technology, "id" | "createdAt" | "subcategoryId">>): Promise<Technology | null>;
|
|
3638
|
+
/**
|
|
3639
|
+
* Soft delete tehnologije (postavlja isActive na false)
|
|
3640
|
+
* @param categoryId - ID kategorije
|
|
3641
|
+
* @param subcategoryId - ID podkategorije
|
|
3642
|
+
* @param technologyId - ID tehnologije koja se briše
|
|
3643
|
+
*/
|
|
3644
|
+
delete(categoryId: string, subcategoryId: string, technologyId: string): Promise<void>;
|
|
3645
|
+
/**
|
|
3646
|
+
* Vraća tehnologiju po ID-u
|
|
3647
|
+
* @param categoryId - ID kategorije
|
|
3648
|
+
* @param subcategoryId - ID podkategorije
|
|
3649
|
+
* @param technologyId - ID tražene tehnologije
|
|
3650
|
+
* @returns Tehnologija ili null ako ne postoji
|
|
3651
|
+
*/
|
|
3652
|
+
getById(categoryId: string, subcategoryId: string, technologyId: string): Promise<Technology | null>;
|
|
3653
|
+
/**
|
|
3654
|
+
* Dodaje novi zahtev tehnologiji
|
|
3655
|
+
* @param categoryId - ID kategorije
|
|
3656
|
+
* @param subcategoryId - ID podkategorije
|
|
3657
|
+
* @param technologyId - ID tehnologije
|
|
3658
|
+
* @param requirement - Zahtev koji se dodaje
|
|
3659
|
+
* @returns Ažurirana tehnologija sa novim zahtevom
|
|
3660
|
+
*/
|
|
3661
|
+
addRequirement(categoryId: string, subcategoryId: string, technologyId: string, requirement: Requirement): Promise<Technology | null>;
|
|
3662
|
+
/**
|
|
3663
|
+
* Uklanja zahtev iz tehnologije
|
|
3664
|
+
* @param categoryId - ID kategorije
|
|
3665
|
+
* @param subcategoryId - ID podkategorije
|
|
3666
|
+
* @param technologyId - ID tehnologije
|
|
3667
|
+
* @param requirement - Zahtev koji se uklanja
|
|
3668
|
+
* @returns Ažurirana tehnologija bez uklonjenog zahteva
|
|
3669
|
+
*/
|
|
3670
|
+
removeRequirement(categoryId: string, subcategoryId: string, technologyId: string, requirement: Requirement): Promise<Technology | null>;
|
|
3671
|
+
/**
|
|
3672
|
+
* Vraća sve zahteve za tehnologiju
|
|
3673
|
+
* @param categoryId - ID kategorije
|
|
3674
|
+
* @param subcategoryId - ID podkategorije
|
|
3675
|
+
* @param technologyId - ID tehnologije
|
|
3676
|
+
* @param type - Opcioni filter za tip zahteva (pre/post)
|
|
3677
|
+
* @returns Lista zahteva
|
|
3678
|
+
*/
|
|
3679
|
+
getRequirements(categoryId: string, subcategoryId: string, technologyId: string, type?: RequirementType): Promise<Requirement[]>;
|
|
3680
|
+
/**
|
|
3681
|
+
* Ažurira postojeći zahtev
|
|
3682
|
+
* @param categoryId - ID kategorije
|
|
3683
|
+
* @param subcategoryId - ID podkategorije
|
|
3684
|
+
* @param technologyId - ID tehnologije
|
|
3685
|
+
* @param oldRequirement - Stari zahtev koji se menja
|
|
3686
|
+
* @param newRequirement - Novi zahtev koji zamenjuje stari
|
|
3687
|
+
* @returns Ažurirana tehnologija
|
|
3688
|
+
*/
|
|
3689
|
+
updateRequirement(categoryId: string, subcategoryId: string, technologyId: string, oldRequirement: Requirement, newRequirement: Requirement): Promise<Technology | null>;
|
|
3690
|
+
/**
|
|
3691
|
+
* Dodaje blokirajući uslov tehnologiji
|
|
3692
|
+
* @param categoryId - ID kategorije
|
|
3693
|
+
* @param subcategoryId - ID podkategorije
|
|
3694
|
+
* @param technologyId - ID tehnologije
|
|
3695
|
+
* @param condition - Blokirajući uslov koji se dodaje
|
|
3696
|
+
* @returns Ažurirana tehnologija
|
|
3697
|
+
*/
|
|
3698
|
+
addBlockingCondition(categoryId: string, subcategoryId: string, technologyId: string, condition: BlockingCondition): Promise<Technology | null>;
|
|
3699
|
+
/**
|
|
3700
|
+
* Uklanja blokirajući uslov iz tehnologije
|
|
3701
|
+
* @param categoryId - ID kategorije
|
|
3702
|
+
* @param subcategoryId - ID podkategorije
|
|
3703
|
+
* @param technologyId - ID tehnologije
|
|
3704
|
+
* @param condition - Blokirajući uslov koji se uklanja
|
|
3705
|
+
* @returns Ažurirana tehnologija
|
|
3706
|
+
*/
|
|
3707
|
+
removeBlockingCondition(categoryId: string, subcategoryId: string, technologyId: string, condition: BlockingCondition): Promise<Technology | null>;
|
|
3708
|
+
/**
|
|
3709
|
+
* Dodaje kontraindikaciju tehnologiji
|
|
3710
|
+
* @param categoryId - ID kategorije
|
|
3711
|
+
* @param subcategoryId - ID podkategorije
|
|
3712
|
+
* @param technologyId - ID tehnologije
|
|
3713
|
+
* @param contraindication - Kontraindikacija koja se dodaje
|
|
3714
|
+
* @returns Ažurirana tehnologija
|
|
3715
|
+
*/
|
|
3716
|
+
addContraindication(categoryId: string, subcategoryId: string, technologyId: string, contraindication: Contraindication): Promise<Technology | null>;
|
|
3717
|
+
/**
|
|
3718
|
+
* Uklanja kontraindikaciju iz tehnologije
|
|
3719
|
+
* @param categoryId - ID kategorije
|
|
3720
|
+
* @param subcategoryId - ID podkategorije
|
|
3721
|
+
* @param technologyId - ID tehnologije
|
|
3722
|
+
* @param contraindication - Kontraindikacija koja se uklanja
|
|
3723
|
+
* @returns Ažurirana tehnologija
|
|
3724
|
+
*/
|
|
3725
|
+
removeContraindication(categoryId: string, subcategoryId: string, technologyId: string, contraindication: Contraindication): Promise<Technology | null>;
|
|
3726
|
+
/**
|
|
3727
|
+
* Dodaje benefit tehnologiji
|
|
3728
|
+
* @param categoryId - ID kategorije
|
|
3729
|
+
* @param subcategoryId - ID podkategorije
|
|
3730
|
+
* @param technologyId - ID tehnologije
|
|
3731
|
+
* @param benefit - Benefit koji se dodaje
|
|
3732
|
+
* @returns Ažurirana tehnologija
|
|
3733
|
+
*/
|
|
3734
|
+
addBenefit(categoryId: string, subcategoryId: string, technologyId: string, benefit: TreatmentBenefit): Promise<Technology | null>;
|
|
3735
|
+
/**
|
|
3736
|
+
* Uklanja benefit iz tehnologije
|
|
3737
|
+
* @param categoryId - ID kategorije
|
|
3738
|
+
* @param subcategoryId - ID podkategorije
|
|
3739
|
+
* @param technologyId - ID tehnologije
|
|
3740
|
+
* @param benefit - Benefit koji se uklanja
|
|
3741
|
+
* @returns Ažurirana tehnologija
|
|
3742
|
+
*/
|
|
3743
|
+
removeBenefit(categoryId: string, subcategoryId: string, technologyId: string, benefit: TreatmentBenefit): Promise<Technology | null>;
|
|
3744
|
+
/**
|
|
3745
|
+
* Vraća sve blokirajuće uslove za tehnologiju
|
|
3746
|
+
* @param categoryId - ID kategorije
|
|
3747
|
+
* @param subcategoryId - ID podkategorije
|
|
3748
|
+
* @param technologyId - ID tehnologije
|
|
3749
|
+
* @returns Lista blokirajućih uslova
|
|
3750
|
+
*/
|
|
3751
|
+
getBlockingConditions(categoryId: string, subcategoryId: string, technologyId: string): Promise<BlockingCondition[]>;
|
|
3752
|
+
/**
|
|
3753
|
+
* Vraća sve kontraindikacije za tehnologiju
|
|
3754
|
+
* @param categoryId - ID kategorije
|
|
3755
|
+
* @param subcategoryId - ID podkategorije
|
|
3756
|
+
* @param technologyId - ID tehnologije
|
|
3757
|
+
* @returns Lista kontraindikacija
|
|
3758
|
+
*/
|
|
3759
|
+
getContraindications(categoryId: string, subcategoryId: string, technologyId: string): Promise<Contraindication[]>;
|
|
3760
|
+
/**
|
|
3761
|
+
* Vraća sve benefite za tehnologiju
|
|
3762
|
+
* @param categoryId - ID kategorije
|
|
3763
|
+
* @param subcategoryId - ID podkategorije
|
|
3764
|
+
* @param technologyId - ID tehnologije
|
|
3765
|
+
* @returns Lista benefita
|
|
3766
|
+
*/
|
|
3767
|
+
getBenefits(categoryId: string, subcategoryId: string, technologyId: string): Promise<TreatmentBenefit[]>;
|
|
3768
|
+
/**
|
|
3769
|
+
* Ažurira zahteve sertifikacije za tehnologiju
|
|
3770
|
+
* @param categoryId - ID kategorije
|
|
3771
|
+
* @param subcategoryId - ID podkategorije
|
|
3772
|
+
* @param technologyId - ID tehnologije
|
|
3773
|
+
* @param certificationRequirement - Novi zahtevi sertifikacije
|
|
3774
|
+
* @returns Ažurirana tehnologija
|
|
3775
|
+
*/
|
|
3776
|
+
updateCertificationRequirement(categoryId: string, subcategoryId: string, technologyId: string, certificationRequirement: CertificationRequirement): Promise<Technology | null>;
|
|
3777
|
+
/**
|
|
3778
|
+
* Vraća zahteve sertifikacije za tehnologiju
|
|
3779
|
+
* @param categoryId - ID kategorije
|
|
3780
|
+
* @param subcategoryId - ID podkategorije
|
|
3781
|
+
* @param technologyId - ID tehnologije
|
|
3782
|
+
* @returns Zahtevi sertifikacije ili null ako tehnologija ne postoji
|
|
3783
|
+
*/
|
|
3784
|
+
getCertificationRequirement(categoryId: string, subcategoryId: string, technologyId: string): Promise<CertificationRequirement | null>;
|
|
3785
|
+
}
|
|
3786
|
+
|
|
3787
|
+
declare class BrandService extends BaseService {
|
|
3788
|
+
private get brandsRef();
|
|
3789
|
+
create(brand: Omit<Brand, "id" | "createdAt" | "updatedAt">): Promise<{
|
|
3790
|
+
isActive: boolean;
|
|
3791
|
+
updatedAt: Date;
|
|
3792
|
+
name: string;
|
|
3793
|
+
description?: string | undefined;
|
|
3794
|
+
createdAt: Date;
|
|
3795
|
+
manufacturer: string;
|
|
3796
|
+
website?: string | undefined;
|
|
3797
|
+
id: string;
|
|
3798
|
+
}>;
|
|
3799
|
+
getAll(): Promise<Brand[]>;
|
|
3800
|
+
update(id: string, brand: Partial<Omit<Brand, "id" | "createdAt">>): Promise<Brand | null>;
|
|
3801
|
+
delete(id: string): Promise<void>;
|
|
3802
|
+
getById(id: string): Promise<Brand | null>;
|
|
3803
|
+
}
|
|
3804
|
+
|
|
3805
|
+
declare class ProductService extends BaseService {
|
|
3806
|
+
private getProductsRefByTechnology;
|
|
3807
|
+
private getProductsRefByBrand;
|
|
3808
|
+
create(categoryId: string, subcategoryId: string, technologyId: string, brandId: string, product: Omit<Product, "id" | "createdAt" | "updatedAt" | "brandId" | "technologyId">): Promise<{
|
|
3809
|
+
isActive: boolean;
|
|
3810
|
+
updatedAt: Date;
|
|
3811
|
+
contraindications?: string[] | undefined;
|
|
3812
|
+
name: string;
|
|
3813
|
+
dosage?: string | undefined;
|
|
3814
|
+
description?: string | undefined;
|
|
3815
|
+
createdAt: Date;
|
|
3816
|
+
technicalDetails?: string | undefined;
|
|
3817
|
+
brandId: string;
|
|
3818
|
+
technologyId: string;
|
|
3819
|
+
warnings?: string[] | undefined;
|
|
3820
|
+
composition?: string | undefined;
|
|
3821
|
+
indications?: string[] | undefined;
|
|
3822
|
+
id: string;
|
|
3823
|
+
}>;
|
|
3824
|
+
getAllByTechnology(categoryId: string, subcategoryId: string, technologyId: string): Promise<Product[]>;
|
|
3825
|
+
getAllByBrand(brandId: string): Promise<Product[]>;
|
|
3826
|
+
update(categoryId: string, subcategoryId: string, technologyId: string, productId: string, product: Partial<Omit<Product, "id" | "createdAt" | "brandId" | "technologyId">>): Promise<Product | null>;
|
|
3827
|
+
delete(categoryId: string, subcategoryId: string, technologyId: string, productId: string): Promise<void>;
|
|
3828
|
+
getById(categoryId: string, subcategoryId: string, technologyId: string, productId: string): Promise<Product | null>;
|
|
3829
|
+
}
|
|
3830
|
+
|
|
3442
3831
|
/**
|
|
3443
3832
|
* Enum for synced calendar provider
|
|
3444
3833
|
*/
|
|
@@ -4423,6 +4812,10 @@ interface UpdateProcedureData {
|
|
|
4423
4812
|
duration?: number;
|
|
4424
4813
|
isActive?: boolean;
|
|
4425
4814
|
}
|
|
4815
|
+
/**
|
|
4816
|
+
* Collection name for procedures in Firestore
|
|
4817
|
+
*/
|
|
4818
|
+
declare const PROCEDURES_COLLECTION = "procedures";
|
|
4426
4819
|
|
|
4427
4820
|
declare class ProcedureService extends BaseService {
|
|
4428
4821
|
constructor(db: Firestore, auth: Auth, app: FirebaseApp);
|
|
@@ -15266,4 +15659,4 @@ declare enum FirebaseErrorCode {
|
|
|
15266
15659
|
POPUP_ALREADY_OPEN = "auth/cancelled-popup-request"
|
|
15267
15660
|
}
|
|
15268
15661
|
|
|
15269
|
-
export { AUTH_ERRORS, type AddAllergyData, type AddBlockingConditionData, type AddContraindicationData, type AddMedicationData, type AddressData, type AdminInfo, type AdminToken, AdminTokenStatus, type Allergy, type AllergySubtype, AllergyType, type AllergyTypeWithSubtype, type AppointmentNotification, type AppointmentReminderNotification, AuthError, AuthService, type BaseNotification, BlockingCondition, type Brand, CALENDAR_COLLECTION, CLINICS_COLLECTION, CLINIC_ADMINS_COLLECTION, CLINIC_GROUPS_COLLECTION, type CalendarEvent, CalendarEventStatus, type CalendarEventTime, CalendarEventType, CalendarServiceV2, CalendarSyncStatus, type Category, CertificationLevel, CertificationSpecialty, type Clinic, type ClinicAdmin, ClinicAdminService, type ClinicAdminSignupData, type ClinicBranchSetupData, type ClinicContactInfo, type ClinicGroup, ClinicGroupService, type ClinicGroupSetupData, type ClinicInfo, type ClinicLocation, ClinicPhotoTag, type ClinicReview, ClinicService, ClinicTag, type ClinicTags, type ContactPerson, Contraindication, CosmeticAllergySubtype, type CreateAdminTokenData, type CreateAppointmentParams, type CreateCalendarEventData, type CreateClinicAdminData, type CreateClinicData, type CreateClinicGroupData, type CreateDefaultClinicGroupData, type CreateDocumentTemplateData, type CreateDraftPractitionerData, type CreatePatientLocationInfoData, type CreatePatientMedicalInfoData, type CreatePatientProfileData, type CreatePatientSensitiveInfoData, type CreatePractitionerData, type CreatePractitionerTokenData, type CreateSyncedCalendarData, type CreateUserData, Currency, DOCUMENTATION_TEMPLATES_COLLECTION, type DoctorInfo, type DocumentElement, DocumentElementType, type DocumentTemplate, DocumentationTemplateService, DynamicVariable, type EmergencyContact, EnvironmentalAllergySubtype, FILLED_DOCUMENTS_COLLECTION, type FilledDocument, FilledDocumentService, FilledDocumentStatus, FirebaseErrorCode, type FirebaseUser, FoodAllergySubtype, type GamificationInfo, Gender, HeadingLevel, Language, ListType, type LocationData, MedicationAllergySubtype, type Notification, NotificationService, NotificationStatus, NotificationType, PATIENTS_COLLECTION, PATIENT_APPOINTMENTS_COLLECTION, PATIENT_LOCATION_INFO_COLLECTION, PATIENT_MEDICAL_HISTORY_COLLECTION, PATIENT_MEDICAL_INFO_COLLECTION, PATIENT_SENSITIVE_INFO_COLLECTION, PRACTITIONERS_COLLECTION, type PatientClinic, type PatientDoctor, type PatientLocationInfo, type PatientMedicalInfo, type PatientProfile, type PatientProfileComplete, type PatientProfileInfo, type PatientSensitiveInfo, PatientService, type PostRequirementNotification, PracticeType, type Practitioner, type PractitionerBasicInfo, type PractitionerCertification, type PractitionerClinicProcedures, type PractitionerClinicWorkingHours, type PractitionerProfileInfo, type PractitionerReview, PractitionerService, PractitionerStatus, type PractitionerToken, PractitionerTokenStatus, type PractitionerWorkingHours, type PreRequirementNotification, PricingMeasure, type ProcedureCategorization, ProcedureFamily, type ProcedureInfo, ProcedureService, type Product, REGISTER_TOKENS_COLLECTION, type Requirement, type ReviewInfo, SYNCED_CALENDARS_COLLECTION, type ServiceInfo, type Subcategory, SubscriptionModel, type SyncedCalendar, type SyncedCalendarEvent, SyncedCalendarProvider, SyncedCalendarsService, type Technology, type TimeSlot, TreatmentBenefit, USER_ERRORS, type UpdateAllergyData, type UpdateAppointmentParams, type UpdateBlockingConditionData, type UpdateCalendarEventData, type UpdateClinicAdminData, type UpdateClinicData, type UpdateClinicGroupData, type UpdateContraindicationData, type UpdateDocumentTemplateData, type UpdateMedicationData, type UpdatePatientLocationInfoData, type UpdatePatientMedicalInfoData, type UpdatePatientProfileData, type UpdatePatientSensitiveInfoData, type UpdatePractitionerData, type UpdateSyncedCalendarData, type UpdateVitalStatsData, type User, UserRole, UserService, type ValidationSchema, type VitalStats, type WorkingHours, addAllergySchema, addBlockingConditionSchema, addContraindicationSchema, addMedicationSchema, addressDataSchema, adminInfoSchema, adminTokenSchema, allergySchema, allergySubtypeSchema, appointmentNotificationSchema, appointmentReminderNotificationSchema, baseNotificationSchema, blockingConditionSchema, calendarEventSchema, calendarEventTimeSchema, clinicAdminOptionsSchema, clinicAdminSchema, clinicAdminSignupSchema, clinicBranchSetupSchema, clinicContactInfoSchema, clinicGroupSchema, clinicGroupSetupSchema, clinicInfoSchema, clinicLocationSchema, clinicReviewSchema, clinicSchema, clinicTagsSchema, contactPersonSchema, contraindicationSchema, createAdminTokenSchema, createAppointmentSchema, createCalendarEventSchema, createClinicAdminSchema, createClinicGroupSchema, createClinicSchema, createDefaultClinicGroupSchema, createDocumentTemplateSchema, createDraftPractitionerSchema, createPatientLocationInfoSchema, createPatientMedicalInfoSchema, createPatientProfileSchema, createPatientSensitiveInfoSchema, createPractitionerSchema, createPractitionerTokenSchema, createUserOptionsSchema, doctorInfoSchema, documentElementSchema, documentElementWithoutIdSchema, documentTemplateSchema, emailSchema, emergencyContactSchema, gamificationSchema, getFirebaseApp, getFirebaseAuth, getFirebaseDB, getFirebaseInstance, initializeFirebase, locationDataSchema, medicationSchema, notificationSchema, passwordSchema, patientClinicSchema, patientDoctorSchema, patientLocationInfoSchema, patientMedicalInfoSchema, patientProfileInfoSchema, patientProfileSchema, patientSensitiveInfoSchema, postRequirementNotificationSchema, practitionerBasicInfoSchema, practitionerCertificationSchema, practitionerClinicProceduresSchema, practitionerClinicWorkingHoursSchema, practitionerProfileInfoSchema, practitionerReviewSchema, practitionerSchema, practitionerTokenSchema, practitionerWorkingHoursSchema, preRequirementNotificationSchema, procedureCategorizationSchema, procedureInfoSchema, reviewInfoSchema, serviceInfoSchema, syncedCalendarEventSchema, timeSlotSchema, timestampSchema, updateAllergySchema, updateAppointmentSchema, updateBlockingConditionSchema, updateCalendarEventSchema, updateClinicAdminSchema, updateClinicGroupSchema, updateClinicSchema, updateContraindicationSchema, updateDocumentTemplateSchema, updateMedicationSchema, updatePatientMedicalInfoSchema, updateVitalStatsSchema, userRoleSchema, userRolesSchema, userSchema, vitalStatsSchema, workingHoursSchema };
|
|
15662
|
+
export { AUTH_ERRORS, type AddAllergyData, type AddBlockingConditionData, type AddContraindicationData, type AddMedicationData, type AddressData, type AdminInfo, type AdminToken, AdminTokenStatus, type Allergy, type AllergySubtype, AllergyType, type AllergyTypeWithSubtype, type AppointmentNotification, type AppointmentReminderNotification, AuthError, AuthService, type BaseNotification, BlockingCondition, type Brand, BrandService, CALENDAR_COLLECTION, CLINICS_COLLECTION, CLINIC_ADMINS_COLLECTION, CLINIC_GROUPS_COLLECTION, type CalendarEvent, CalendarEventStatus, type CalendarEventTime, CalendarEventType, CalendarServiceV2, CalendarSyncStatus, type Category, CategoryService, CertificationLevel, CertificationSpecialty, type Clinic, type ClinicAdmin, ClinicAdminService, type ClinicAdminSignupData, type ClinicBranchSetupData, type ClinicContactInfo, type ClinicGroup, ClinicGroupService, type ClinicGroupSetupData, type ClinicInfo, type ClinicLocation, ClinicPhotoTag, type ClinicReview, ClinicService, ClinicTag, type ClinicTags, type ContactPerson, Contraindication, CosmeticAllergySubtype, type CreateAdminTokenData, type CreateAppointmentParams, type CreateCalendarEventData, type CreateClinicAdminData, type CreateClinicData, type CreateClinicGroupData, type CreateDefaultClinicGroupData, type CreateDocumentTemplateData, type CreateDraftPractitionerData, type CreatePatientLocationInfoData, type CreatePatientMedicalInfoData, type CreatePatientProfileData, type CreatePatientSensitiveInfoData, type CreatePractitionerData, type CreatePractitionerTokenData, type CreateProcedureData, type CreateSyncedCalendarData, type CreateUserData, Currency, DOCUMENTATION_TEMPLATES_COLLECTION, type DoctorInfo, type DocumentElement, DocumentElementType, type DocumentTemplate, DocumentationTemplateService, DynamicVariable, type EmergencyContact, EnvironmentalAllergySubtype, FILLED_DOCUMENTS_COLLECTION, type FilledDocument, FilledDocumentService, FilledDocumentStatus, FirebaseErrorCode, type FirebaseUser, FoodAllergySubtype, type GamificationInfo, Gender, HeadingLevel, Language, ListType, type LocationData, MedicationAllergySubtype, type Notification, NotificationService, NotificationStatus, NotificationType, PATIENTS_COLLECTION, PATIENT_APPOINTMENTS_COLLECTION, PATIENT_LOCATION_INFO_COLLECTION, PATIENT_MEDICAL_HISTORY_COLLECTION, PATIENT_MEDICAL_INFO_COLLECTION, PATIENT_SENSITIVE_INFO_COLLECTION, PRACTITIONERS_COLLECTION, PROCEDURES_COLLECTION, type PatientClinic, type PatientDoctor, type PatientLocationInfo, type PatientMedicalInfo, type PatientProfile, type PatientProfileComplete, type PatientProfileInfo, type PatientSensitiveInfo, PatientService, type PostRequirementNotification, PracticeType, type Practitioner, type PractitionerBasicInfo, type PractitionerCertification, type PractitionerClinicProcedures, type PractitionerClinicWorkingHours, type PractitionerProfileInfo, type PractitionerReview, PractitionerService, PractitionerStatus, type PractitionerToken, PractitionerTokenStatus, type PractitionerWorkingHours, type PreRequirementNotification, PricingMeasure, type Procedure, type ProcedureCategorization, ProcedureFamily, type ProcedureInfo, ProcedureService, type Product, ProductService, REGISTER_TOKENS_COLLECTION, type Requirement, type ReviewInfo, SYNCED_CALENDARS_COLLECTION, type ServiceInfo, type Subcategory, SubcategoryService, SubscriptionModel, type SyncedCalendar, type SyncedCalendarEvent, SyncedCalendarProvider, SyncedCalendarsService, type Technology, TechnologyService, type TimeSlot, TreatmentBenefit, USER_ERRORS, type UpdateAllergyData, type UpdateAppointmentParams, type UpdateBlockingConditionData, type UpdateCalendarEventData, type UpdateClinicAdminData, type UpdateClinicData, type UpdateClinicGroupData, type UpdateContraindicationData, type UpdateDocumentTemplateData, type UpdateMedicationData, type UpdatePatientLocationInfoData, type UpdatePatientMedicalInfoData, type UpdatePatientProfileData, type UpdatePatientSensitiveInfoData, type UpdatePractitionerData, type UpdateProcedureData, type UpdateSyncedCalendarData, type UpdateVitalStatsData, type User, UserRole, UserService, type ValidationSchema, type VitalStats, type WorkingHours, addAllergySchema, addBlockingConditionSchema, addContraindicationSchema, addMedicationSchema, addressDataSchema, adminInfoSchema, adminTokenSchema, allergySchema, allergySubtypeSchema, appointmentNotificationSchema, appointmentReminderNotificationSchema, baseNotificationSchema, blockingConditionSchema, calendarEventSchema, calendarEventTimeSchema, clinicAdminOptionsSchema, clinicAdminSchema, clinicAdminSignupSchema, clinicBranchSetupSchema, clinicContactInfoSchema, clinicGroupSchema, clinicGroupSetupSchema, clinicInfoSchema, clinicLocationSchema, clinicReviewSchema, clinicSchema, clinicTagsSchema, contactPersonSchema, contraindicationSchema, createAdminTokenSchema, createAppointmentSchema, createCalendarEventSchema, createClinicAdminSchema, createClinicGroupSchema, createClinicSchema, createDefaultClinicGroupSchema, createDocumentTemplateSchema, createDraftPractitionerSchema, createPatientLocationInfoSchema, createPatientMedicalInfoSchema, createPatientProfileSchema, createPatientSensitiveInfoSchema, createPractitionerSchema, createPractitionerTokenSchema, createUserOptionsSchema, doctorInfoSchema, documentElementSchema, documentElementWithoutIdSchema, documentTemplateSchema, emailSchema, emergencyContactSchema, gamificationSchema, getFirebaseApp, getFirebaseAuth, getFirebaseDB, getFirebaseInstance, initializeFirebase, locationDataSchema, medicationSchema, notificationSchema, passwordSchema, patientClinicSchema, patientDoctorSchema, patientLocationInfoSchema, patientMedicalInfoSchema, patientProfileInfoSchema, patientProfileSchema, patientSensitiveInfoSchema, postRequirementNotificationSchema, practitionerBasicInfoSchema, practitionerCertificationSchema, practitionerClinicProceduresSchema, practitionerClinicWorkingHoursSchema, practitionerProfileInfoSchema, practitionerReviewSchema, practitionerSchema, practitionerTokenSchema, practitionerWorkingHoursSchema, preRequirementNotificationSchema, procedureCategorizationSchema, procedureInfoSchema, reviewInfoSchema, serviceInfoSchema, syncedCalendarEventSchema, timeSlotSchema, timestampSchema, updateAllergySchema, updateAppointmentSchema, updateBlockingConditionSchema, updateCalendarEventSchema, updateClinicAdminSchema, updateClinicGroupSchema, updateClinicSchema, updateContraindicationSchema, updateDocumentTemplateSchema, updateMedicationSchema, updatePatientMedicalInfoSchema, updateVitalStatsSchema, userRoleSchema, userRolesSchema, userSchema, vitalStatsSchema, workingHoursSchema };
|