@compassdigital/sdk.typescript 4.485.0 → 4.487.0

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.
@@ -828,31 +828,31 @@ export interface GlobalMenuGroup {
828
828
  // Format: global_menu_group_<uuid>
829
829
  id: string;
830
830
  name: string;
831
- is_active?: boolean;
832
- posid_segment?: string;
833
- auto_push_to_local?: boolean;
834
- price_levels?: Record<string, any>;
835
- show_v4?: boolean;
836
- menu_labels?: Record<string, any>;
837
- menuworks_unit_ids?: string[];
831
+ isActive?: boolean;
832
+ posidSegment?: string;
833
+ autoPushToLocal?: boolean;
834
+ priceLevels?: Record<string, any>;
835
+ showV4?: boolean;
836
+ menuLabels?: Record<string, any>;
837
+ menuworksUnitIds?: string[];
838
838
  // ISO date
839
- created_at: string;
839
+ createdAt: string;
840
840
  // ISO date
841
- updated_at: string;
841
+ updatedAt: string;
842
842
  // ISO date, present if soft deleted
843
- deleted_at?: string;
843
+ deletedAt?: string;
844
844
  version: number;
845
845
  }
846
846
 
847
847
  export interface MenuListMetadata {
848
- total_results?: number;
849
- total_pages?: number;
850
- result_count?: number;
848
+ totalResults?: number;
849
+ totalPages?: number;
850
+ resultCount?: number;
851
851
  limit?: number;
852
852
  page?: number;
853
- sort_by?: string;
854
- sort_order?: 'DESC' | 'ASC';
855
- soft_deleted?: 'include' | 'exclude' | 'only';
853
+ sortBy?: string;
854
+ sortOrder?: 'DESC' | 'ASC';
855
+ softDeleted?: 'include' | 'exclude' | 'only';
856
856
  }
857
857
 
858
858
  export interface GetGlobalMenuGroupsResponse {
@@ -860,191 +860,132 @@ export interface GetGlobalMenuGroupsResponse {
860
860
  meta?: MenuListMetadata;
861
861
  }
862
862
 
863
- export interface BrandItemsCategoryRequestDTO {
863
+ export interface CentricMenuEntityBaseDTO {
864
864
  // The id of the entity
865
865
  id: string;
866
866
  // The name of the entity
867
867
  name: string;
868
868
  }
869
869
 
870
- export interface BrandItemsMenuRequestDTO {
870
+ export interface CentricMenuDTO {
871
871
  // The id of the entity
872
872
  id: string;
873
873
  // The name of the entity
874
874
  name: string;
875
- categories?: BrandItemsCategoryRequestDTO[];
875
+ categories: CentricMenuEntityBaseDTO[];
876
876
  }
877
877
 
878
- export interface BrandItemsMenuBrandRequestDTO {
878
+ export interface PostBrandItemsSearchMenuBrand {
879
879
  // The id of the entity
880
880
  id: string;
881
881
  // The name of the entity
882
882
  name: string;
883
- menus?: BrandItemsMenuRequestDTO[];
883
+ menus: CentricMenuDTO[];
884
884
  }
885
885
 
886
- export interface PostBrandItemsSearchBody {
887
- menuBrands: BrandItemsMenuBrandRequestDTO[];
886
+ export interface PostMenuBrandItemsSearchRequestDTO {
887
+ menuBrands: PostBrandItemsSearchMenuBrand[];
888
888
  searchTerm?: string;
889
889
  }
890
890
 
891
- export interface ItemSearchMetaDTO {
891
+ export interface CentricMenuSearchMetaDTO {
892
892
  // Number of results returned
893
- result_count: number;
894
- }
895
-
896
- export interface ItemSearchItemDTO {
897
- // The id of the entity
898
- id: string;
899
- // The name of the entity
900
- name: string;
893
+ resultCount: number;
901
894
  }
902
895
 
903
- export interface ItemSearchCategoryDTO {
904
- // The id of the entity
905
- id: string;
906
- // The name of the entity
907
- name: string;
908
- items: ItemSearchItemDTO[];
896
+ export interface PostMenuBrandItemsSearchResponseDTO {
897
+ meta: CentricMenuSearchMetaDTO;
898
+ results: PostBrandItemsSearchMenuBrand[];
909
899
  }
910
900
 
911
- export interface ItemSearchMenuDTO {
901
+ export interface StationItemsSearchStation {
912
902
  // The id of the entity
913
903
  id: string;
914
904
  // The name of the entity
915
905
  name: string;
916
- categories: ItemSearchCategoryDTO[];
906
+ menus: CentricMenuDTO[];
917
907
  }
918
908
 
919
- export interface BrandItemsResultDTO {
909
+ export interface StationItemsSearchSite {
920
910
  // The id of the entity
921
911
  id: string;
922
912
  // The name of the entity
923
913
  name: string;
924
- menus: ItemSearchMenuDTO[];
914
+ stations: StationItemsSearchStation[];
925
915
  }
926
916
 
927
- export interface PostBrandItemsSearchResponse {
928
- meta: ItemSearchMetaDTO;
929
- results: BrandItemsResultDTO[];
930
- }
931
-
932
- export interface StationItemsCategoryRequestDTO {
933
- // The id of the entity
934
- id: string;
935
- // The name of the entity
936
- name: string;
917
+ export interface PostStationItemsSearchRequestDTO {
918
+ sites: StationItemsSearchSite[];
919
+ searchTerm?: string;
937
920
  }
938
921
 
939
- export interface StationItemsMenuRequestDTO {
940
- // The id of the entity
941
- id: string;
942
- // The name of the entity
943
- name: string;
944
- categories?: StationItemsCategoryRequestDTO[];
922
+ export interface PostStationItemsSearchResponseDTO {
923
+ meta: CentricMenuSearchMetaDTO;
924
+ results: StationItemsSearchSite[];
945
925
  }
946
926
 
947
- export interface StationItemsStationRequestDTO {
948
- // The id of the entity
949
- id: string;
950
- // The name of the entity
951
- name: string;
952
- menus: StationItemsMenuRequestDTO[];
927
+ export interface PostMenuBrandsFetchRequestDTO {
928
+ // Array of menu brand ids to fetch
929
+ brandIds: string[];
953
930
  }
954
931
 
955
- export interface StationItemsSiteRequestDTO {
932
+ export interface FetchMenuBrandCategory {
956
933
  // The id of the entity
957
934
  id: string;
958
935
  // The name of the entity
959
936
  name: string;
960
- stations: StationItemsStationRequestDTO[];
961
937
  }
962
938
 
963
- export interface PostStationItemsSearchBody {
964
- sites: StationItemsSiteRequestDTO[];
965
- searchTerm?: string;
966
- }
967
-
968
- export interface StationItemsStationDTO {
939
+ export interface FetchMenuBrandMenu {
969
940
  // The id of the entity
970
941
  id: string;
971
942
  // The name of the entity
972
943
  name: string;
973
- menus: ItemSearchMenuDTO[];
944
+ categories: FetchMenuBrandCategory[];
974
945
  }
975
946
 
976
- export interface StationItemsSiteResultDTO {
947
+ export interface MenuBrand {
977
948
  // The id of the entity
978
949
  id: string;
979
950
  // The name of the entity
980
951
  name: string;
981
- stations: StationItemsStationDTO[];
952
+ menus: FetchMenuBrandMenu[];
982
953
  }
983
954
 
984
- export interface PostStationItemsSearchResponse {
985
- meta: ItemSearchMetaDTO;
986
- results: StationItemsSiteResultDTO[];
987
- }
988
-
989
- export interface PostMenuBrandsFetchRequestDTO {
990
- // Array of menu brand ids to fetch
991
- brand_ids: string[];
992
- }
993
-
994
- export interface PostMenuBrandsFetchMeta {
995
- // Number of brands returned
996
- result_count: number;
955
+ export interface PostMenuBrandsFetchResponseDTO {
956
+ meta: CentricMenuSearchMetaDTO;
957
+ results: MenuBrand[];
997
958
  }
998
959
 
999
- export interface CentricMenuCategoryDTO {
1000
- // The id of the entity
1001
- id: string;
1002
- // The name of the entity
1003
- name: string;
960
+ export interface PostMenuStationsMenusFetchRequestDTO {
961
+ // Array of menu stations ids to fetch
962
+ stationIds: string[];
1004
963
  }
1005
964
 
1006
- export interface CentricMenuDTO {
965
+ export interface FetchStationMenuCategory {
1007
966
  // The id of the entity
1008
967
  id: string;
1009
968
  // The name of the entity
1010
969
  name: string;
1011
- categories: CentricMenuCategoryDTO[];
1012
970
  }
1013
971
 
1014
- export interface MenuBrandResultDTO {
972
+ export interface FetchStationMenu {
1015
973
  // The id of the entity
1016
974
  id: string;
1017
975
  // The name of the entity
1018
976
  name: string;
1019
- menus: CentricMenuDTO[];
1020
- }
1021
-
1022
- export interface PostMenuBrandsFetchResponseDTO {
1023
- meta: PostMenuBrandsFetchMeta;
1024
- results: MenuBrandResultDTO[];
1025
- }
1026
-
1027
- export interface PostMenuStationsMenusFetchRequestDTO {
1028
- // Array of menu stations ids to fetch
1029
- station_ids: string[];
977
+ categories: FetchStationMenuCategory[];
1030
978
  }
1031
979
 
1032
- export interface PostMenuStationsMenusFetchMeta {
1033
- // Number of stations menus returned
1034
- result_count: number;
1035
- }
1036
-
1037
- export interface MenuStationMenusResultDTO {
980
+ export interface MenuStation {
1038
981
  // The id of the entity
1039
982
  id: string;
1040
- // The name of the entity
1041
- name: string;
1042
- menus: CentricMenuDTO[];
983
+ menus: FetchStationMenu[];
1043
984
  }
1044
985
 
1045
986
  export interface PostMenuStationsMenusFetchResponseDTO {
1046
- meta: PostMenuStationsMenusFetchMeta;
1047
- results: MenuStationMenusResultDTO[];
987
+ meta: CentricMenuSearchMetaDTO;
988
+ results: MenuStation[];
1048
989
  }
1049
990
 
1050
991
  export interface SwapListRequestDto {
@@ -1103,6 +1044,62 @@ export interface SwapListResponseDto {
1103
1044
  swaps: SwapRecommendation[];
1104
1045
  }
1105
1046
 
1047
+ export interface SwapRevenueOut {
1048
+ // Item revenue from the last 30 days
1049
+ revenue_last_30_days: number;
1050
+ // Item projected revenue for the next 30 days
1051
+ projected_revenue_next_30_days: number;
1052
+ }
1053
+
1054
+ export interface SwapRevenueIn {
1055
+ // Projected revenue for the next 30 days if swap is applied
1056
+ projected_revenue_next_30_days: number;
1057
+ }
1058
+
1059
+ export interface SwapRevenueDetails {
1060
+ // Revenue data for the item being swapped out
1061
+ swap_out: SwapRevenueOut;
1062
+ // Revenue data for the item being swapped in
1063
+ swap_in: SwapRevenueIn;
1064
+ }
1065
+
1066
+ export interface SwapOrderOut {
1067
+ // Number of orders in the last 30 days
1068
+ orders_last_30_days: number;
1069
+ // Forecasted orders for the next 30 days
1070
+ orders_forecast_next_30_days: number;
1071
+ }
1072
+
1073
+ export interface SwapOrderIn {
1074
+ // Forecasted orders for the next 30 days
1075
+ orders_forecast_next_30_days: number;
1076
+ }
1077
+
1078
+ export interface SwapOrderDetails {
1079
+ // Order data for the item being removed
1080
+ swap_out: SwapOrderOut;
1081
+ // Order data for the item being added
1082
+ swap_in: SwapOrderIn;
1083
+ }
1084
+
1085
+ export interface SwapPriceDetails {
1086
+ // Price of the item being swapped out
1087
+ swap_out: number;
1088
+ // Price of the item being swapped in
1089
+ swap_in: number;
1090
+ }
1091
+
1092
+ export interface SwapDetailsResponseDto {
1093
+ // Revenue metrics for swap items
1094
+ revenue: SwapRevenueDetails;
1095
+ // Order volume metrics for swap items
1096
+ orders: SwapOrderDetails;
1097
+ // Price comparison for swap items
1098
+ price: SwapPriceDetails;
1099
+ // Site profile description explaining why this swap was recommended
1100
+ site_profile: string;
1101
+ }
1102
+
1106
1103
  // POST /centricos/ai/item/description - Generate item description
1107
1104
 
1108
1105
  export type PostCentricosAiItemDescriptionBody = AIItemDescriptionRequest;
@@ -1427,15 +1424,15 @@ export type GetCentricosMenuGlobalMenuGroupsResponse = GetGlobalMenuGroupsRespon
1427
1424
 
1428
1425
  // POST /centricos/menu/brand/items/search - Search for global items across brands, menus, and categories
1429
1426
 
1430
- export type PostCentricosMenuBrandItemsSearchBody = PostBrandItemsSearchBody;
1427
+ export type PostCentricosMenuBrandItemsSearchBody = PostMenuBrandItemsSearchRequestDTO;
1431
1428
 
1432
- export type PostCentricosMenuBrandItemsSearchResponse = PostBrandItemsSearchResponse;
1429
+ export type PostCentricosMenuBrandItemsSearchResponse = PostMenuBrandItemsSearchResponseDTO;
1433
1430
 
1434
1431
  // POST /centricos/menu/station/items/search - Search for items across sites, stations, menus, and categories
1435
1432
 
1436
- export type PostCentricosMenuStationItemsSearchBody = PostStationItemsSearchBody;
1433
+ export type PostCentricosMenuStationItemsSearchBody = PostStationItemsSearchRequestDTO;
1437
1434
 
1438
- export type PostCentricosMenuStationItemsSearchResponse = PostStationItemsSearchResponse;
1435
+ export type PostCentricosMenuStationItemsSearchResponse = PostStationItemsSearchResponseDTO;
1439
1436
 
1440
1437
  // POST /centricos/menu/brands/fetch - Fetch menu brands to receive an expanded menu > category > item hierarchy
1441
1438
 
@@ -1454,3 +1451,16 @@ export type PostCentricosStationsMenusFetchResponse = PostMenuStationsMenusFetch
1454
1451
  export type ListSwapsBody = SwapListRequestDto;
1455
1452
 
1456
1453
  export type ListSwapsResponse = SwapListResponseDto;
1454
+
1455
+ // GET /centricos/swaps/details - Get detailed information about a swap recommendation
1456
+
1457
+ export interface GetSwapDetailsQuery {
1458
+ // Unique swap recommendation ID
1459
+ recommendation_id: string;
1460
+ // Centric item ID
1461
+ item_id: string;
1462
+ // Centric item POSID
1463
+ pos_id: string;
1464
+ }
1465
+
1466
+ export type GetSwapDetailsResponse = SwapDetailsResponseDto;