@asdp/ferryui 0.1.22-dev.8990 → 0.1.22-dev.9114

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.ts CHANGED
@@ -395,6 +395,14 @@ interface CardTicketLabels {
395
395
  logoAlt: string;
396
396
  }
397
397
  interface CardTicketProps {
398
+ /**
399
+ * Route item
400
+ */
401
+ routeItem: RouteItem;
402
+ /**
403
+ * Departure item
404
+ */
405
+ departureItem: DepartureItem;
398
406
  /**
399
407
  * Language for labels
400
408
  * @default 'id'
@@ -404,66 +412,6 @@ interface CardTicketProps {
404
412
  * Custom labels override
405
413
  */
406
414
  labels?: Partial<CardTicketLabels>;
407
- /**
408
- * Ticket ID
409
- */
410
- id: string | number;
411
- /**
412
- * Ship name
413
- */
414
- shipName: string;
415
- /**
416
- * Ship type (e.g., "Ro-Ro", "Fast Ferry")
417
- */
418
- shipType: string;
419
- /**
420
- * Ship type color for badge
421
- */
422
- shipTypeColor?: 'success' | 'danger' | 'warning' | 'important' | 'informative' | 'severe' | 'subtle';
423
- /**
424
- * Tooltip caption for ship type badge
425
- */
426
- tooltipCaption?: string;
427
- /**
428
- * Available seats count
429
- */
430
- availableSeats: number;
431
- /**
432
- * Departure day (e.g., "Senin, 12 Jan 2024")
433
- */
434
- departureDay: string;
435
- /**
436
- * Departure time (e.g., "08:00")
437
- */
438
- departureTime: string;
439
- /**
440
- * Departure location (e.g., "Merak")
441
- */
442
- departureLocation: string;
443
- /**
444
- * Arrival day (e.g., "Senin, 12 Jan 2024")
445
- */
446
- arrivalDay: string;
447
- /**
448
- * Arrival time (e.g., "10:30")
449
- */
450
- arrivalTime: string;
451
- /**
452
- * Arrival location (e.g., "Bakauheni")
453
- */
454
- arrivalLocation: string;
455
- /**
456
- * Duration (e.g., "2 jam 30 menit")
457
- */
458
- duration: string;
459
- /**
460
- * List of facilities
461
- */
462
- facilities: string[];
463
- /**
464
- * Total price in IDR
465
- */
466
- totalPrice: number;
467
415
  /**
468
416
  * Button text for selecting ticket
469
417
  */
@@ -471,7 +419,7 @@ interface CardTicketProps {
471
419
  /**
472
420
  * Callback when price detail button is clicked
473
421
  */
474
- onPriceDetailClick?: () => void;
422
+ onPriceDetailClick: (billingDetail: BillingDetail, provider: Provider) => void;
475
423
  /**
476
424
  * Callback when policy button is clicked
477
425
  */
@@ -481,6 +429,68 @@ interface CardTicketProps {
481
429
  */
482
430
  onSelectTicket?: () => void;
483
431
  }
432
+ interface DepartureItem {
433
+ departureDay: string;
434
+ departureId: string;
435
+ departureTime: string;
436
+ arrivedTime: string;
437
+ arrivedDay: string;
438
+ estimatedSailingMinute: number;
439
+ availableTicket: number;
440
+ provider: Provider;
441
+ currency: string;
442
+ total: PriceSummary;
443
+ billingDetail: BillingDetail;
444
+ routeDetail?: RouteItem;
445
+ prices: {
446
+ passengerTypeId: number;
447
+ passengerTypeName: string;
448
+ passengerServiceId: number;
449
+ passengerServiceName: string;
450
+ price: number;
451
+ }[];
452
+ shipType: string;
453
+ arrivalLocation: string;
454
+ departureLocation: string;
455
+ }
456
+ interface Provider {
457
+ code: string;
458
+ name: string;
459
+ service: string;
460
+ logo: string;
461
+ shipService: string;
462
+ serviceColor: string;
463
+ description: string;
464
+ facilities: string[];
465
+ }
466
+ interface PriceSummary {
467
+ value: number;
468
+ formatted: string;
469
+ }
470
+ interface BillingDetail {
471
+ items: BillingItem[];
472
+ subtotal: PriceSummary;
473
+ discount: PriceSummary;
474
+ total: PriceSummary;
475
+ }
476
+ interface BillingItem {
477
+ category: 'vehicle' | 'passenger' | string;
478
+ title: string;
479
+ subtitle: string;
480
+ quantity: number;
481
+ unitPrice: number;
482
+ formattedUnitPrice: string;
483
+ subTotal: number;
484
+ formattedSubTotal: string;
485
+ }
486
+ interface RouteItem {
487
+ id: string;
488
+ name: string;
489
+ portFrom: string;
490
+ portTo: string;
491
+ branchFrom: string;
492
+ branchTo: string;
493
+ }
484
494
 
485
495
  declare const CardTicket: React$1.FC<CardTicketProps>;
486
496
 
@@ -948,6 +958,10 @@ interface ModalSearchHarborProps {
948
958
  * Current search query value
949
959
  */
950
960
  searchQuery: string;
961
+ /**
962
+ * Show button favorite
963
+ */
964
+ showButtonFavorite?: boolean;
951
965
  /**
952
966
  * Callback when search query changes
953
967
  */
@@ -1229,6 +1243,7 @@ declare const ModalService: React$1.FC<ModalServiceProps>;
1229
1243
  interface PassengerClass {
1230
1244
  id: number;
1231
1245
  classCode: string;
1246
+ className: string;
1232
1247
  classDescription: string;
1233
1248
  maxCapacity: number;
1234
1249
  count?: number;
@@ -1248,23 +1263,26 @@ interface ModalTotalPassengersLabels {
1248
1263
  * Passenger object structure
1249
1264
  */
1250
1265
  interface Passenger {
1251
- isOrderer?: boolean;
1252
- isCompleted?: boolean;
1253
- id?: number;
1254
- title?: string;
1255
- name: string;
1256
- idType?: string;
1257
- idNumber?: string;
1258
- age?: number;
1259
- date?: string;
1260
- category?: string;
1266
+ id: number;
1267
+ isAccountOwner: boolean;
1268
+ titleId: number;
1269
+ titleName: string;
1270
+ fullName: string;
1271
+ identityTypeId: number;
1272
+ countryId: number;
1273
+ countryName: string;
1274
+ identityTypeCode: keyof typeof IDENTITY_TYPE | string;
1275
+ identityId: number;
1276
+ ageId: number;
1277
+ ageLabel: keyof typeof PASSENGER_TYPE | string;
1278
+ birthdate: string;
1279
+ age: number;
1280
+ category: string;
1261
1281
  ticketClass: string;
1262
- cityId?: string;
1263
- phoneNumber?: {
1264
- countryCode: string;
1265
- phoneNumber: string;
1266
- };
1267
- email?: string;
1282
+ regencyId: number;
1283
+ regencyName: string;
1284
+ phoneNumber: string;
1285
+ email: string;
1268
1286
  }
1269
1287
  /**
1270
1288
  * Service with passenger count
@@ -1282,7 +1300,7 @@ interface PassengerType {
1282
1300
  id: number;
1283
1301
  passengerAgeCode: string;
1284
1302
  passengerAgeName: string;
1285
- passengerDescription: string;
1303
+ passengerAgeDescription: string;
1286
1304
  minAge: number;
1287
1305
  maxAge: number;
1288
1306
  isActive: number;
@@ -1377,9 +1395,148 @@ interface ModalTotalPassengersProps {
1377
1395
  */
1378
1396
  declare const ModalTotalPassengers: React$1.FC<ModalTotalPassengersProps>;
1379
1397
 
1398
+ declare const API_ENDPOINTS: {
1399
+ readonly PORTS: {
1400
+ readonly ORIGIN: "/v1/surrounding/catalog/ports/list/origin";
1401
+ readonly DESTINATION: "/v1/surrounding/catalog/ports/list/destination";
1402
+ };
1403
+ readonly SERVICES: {
1404
+ readonly LIST: "/v1/surrounding/catalog/service-types";
1405
+ };
1406
+ readonly PASSENGERS: {
1407
+ readonly LIST: "/v1/surrounding/catalog/passenger-types";
1408
+ };
1409
+ readonly AUTH: {
1410
+ readonly LOGIN: "/v1/surrounding/auth/login";
1411
+ readonly REGISTER: "/auth/register";
1412
+ readonly LOGOUT: "/auth/logout";
1413
+ readonly REFRESH: "/auth/refresh";
1414
+ readonly PROFILE: "/auth/profile";
1415
+ readonly UPDATE_PROFILE: "/auth/profile";
1416
+ readonly CHANGE_PASSWORD: "/auth/change-password";
1417
+ readonly FORGOT_PASSWORD: "/auth/forgot-password";
1418
+ readonly RESET_PASSWORD: "/auth/reset-password";
1419
+ readonly VERIFY_EMAIL: "/auth/verify-email";
1420
+ };
1421
+ readonly USERS: {
1422
+ readonly LIST: "/users";
1423
+ readonly CREATE: "/users";
1424
+ readonly DETAIL: (id: string) => string;
1425
+ readonly UPDATE: (id: string) => string;
1426
+ readonly DELETE: (id: string) => string;
1427
+ readonly AVATAR: (id: string) => string;
1428
+ };
1429
+ readonly FILES: {
1430
+ readonly UPLOAD: "/files/upload";
1431
+ readonly DOWNLOAD: (id: string) => string;
1432
+ readonly DELETE: (id: string) => string;
1433
+ readonly LIST: "/files";
1434
+ };
1435
+ readonly DASHBOARD: {
1436
+ readonly STATS: "/dashboard/stats";
1437
+ readonly CHART_DATA: "/dashboard/chart-data";
1438
+ readonly RECENT_ACTIVITIES: "/dashboard/recent-activities";
1439
+ };
1440
+ readonly NOTIFICATIONS: {
1441
+ readonly LIST: "/notifications";
1442
+ readonly MARK_READ: (id: string) => string;
1443
+ readonly MARK_ALL_READ: "/notifications/read-all";
1444
+ readonly DELETE: (id: string) => string;
1445
+ readonly SETTINGS: "/notifications/settings";
1446
+ };
1447
+ readonly SETTINGS: {
1448
+ readonly GENERAL: "/settings/general";
1449
+ readonly SECURITY: "/settings/security";
1450
+ readonly PREFERENCES: "/settings/preferences";
1451
+ };
1452
+ };
1453
+ declare const API_CONFIG: {
1454
+ readonly TIMEOUT: 30000;
1455
+ readonly RETRY_ATTEMPTS: 3;
1456
+ readonly RETRY_DELAY: 1000;
1457
+ readonly CACHE_TIME: number;
1458
+ readonly STALE_TIME: number;
1459
+ };
1460
+ declare const API_ERROR_MESSAGES: {
1461
+ readonly NETWORK_ERROR: "Network error occurred. Please check your connection.";
1462
+ readonly TIMEOUT_ERROR: "Request timeout. Please try again.";
1463
+ readonly UNAUTHORIZED: "You are not authorized to perform this action.";
1464
+ readonly FORBIDDEN: "Access denied.";
1465
+ readonly NOT_FOUND: "Resource not found.";
1466
+ readonly SERVER_ERROR: "Internal server error. Please try again later.";
1467
+ readonly VALIDATION_ERROR: "Please check your input and try again.";
1468
+ readonly TOKEN_EXPIRED: "Your session has expired. Please login again.";
1469
+ readonly RATE_LIMIT: "Too many requests. Please try again later.";
1470
+ };
1471
+ declare const HTTP_STATUS: {
1472
+ readonly OK: 200;
1473
+ readonly CREATED: 201;
1474
+ readonly NO_CONTENT: 204;
1475
+ readonly BAD_REQUEST: 400;
1476
+ readonly UNAUTHORIZED: 401;
1477
+ readonly FORBIDDEN: 403;
1478
+ readonly NOT_FOUND: 404;
1479
+ readonly CONFLICT: 409;
1480
+ readonly UNPROCESSABLE_ENTITY: 422;
1481
+ readonly TOO_MANY_REQUESTS: 429;
1482
+ readonly INTERNAL_SERVER_ERROR: 500;
1483
+ readonly BAD_GATEWAY: 502;
1484
+ readonly SERVICE_UNAVAILABLE: 503;
1485
+ };
1486
+ declare const PASSENGER_TYPE: {
1487
+ readonly ADULT: 1;
1488
+ readonly CHILD: 2;
1489
+ readonly INFANT: 3;
1490
+ readonly ELDERLY: 5;
1491
+ };
1492
+ type PASSENGER_TYPE_TYPE = typeof PASSENGER_TYPE[keyof typeof PASSENGER_TYPE];
1493
+ declare const IDENTITY_TYPE: {
1494
+ readonly KTP: 1;
1495
+ readonly SIM: 2;
1496
+ readonly PSP: 3;
1497
+ readonly TGL: 4;
1498
+ };
1499
+ type IDENTITY_TYPE_TYPE = typeof IDENTITY_TYPE[keyof typeof IDENTITY_TYPE];
1500
+ declare const LOAD_TYPE: {
1501
+ readonly PEDESTRIAN: 1;
1502
+ readonly MOTORBIKE: 2;
1503
+ readonly PASSENGER_VEHICLE: 3;
1504
+ readonly GOODS_VEHICLE: 4;
1505
+ readonly LOOSE_LOAD_WITH_VEHICLE: 5;
1506
+ readonly LOOSE_LOAD_WITHOUT_VEHICLE: 6;
1507
+ };
1508
+ type LOAD_TYPE_TYPE = typeof LOAD_TYPE[keyof typeof LOAD_TYPE];
1509
+ declare const GENDER: {
1510
+ readonly MALE: "M";
1511
+ readonly FEMALE: "F";
1512
+ };
1513
+ type GENDER_TYPE = typeof GENDER[keyof typeof GENDER];
1514
+ declare const MY_TICKET_TAB: {
1515
+ readonly WAITING: 1;
1516
+ readonly ACTIVE: 2;
1517
+ readonly COMPLETED: 3;
1518
+ readonly FAILED: 4;
1519
+ readonly RETURNED: 5;
1520
+ };
1521
+ type MY_TICKET_TAB_TYPE = typeof MY_TICKET_TAB[keyof typeof MY_TICKET_TAB];
1522
+ declare const MY_TICKET_STATUS: {
1523
+ readonly DRAFT: 1;
1524
+ readonly NOT_YET_PAID: 2;
1525
+ readonly PAID: 3;
1526
+ readonly CHECKIN: 4;
1527
+ readonly BOARDING: 5;
1528
+ readonly NEED_ACTION: 6;
1529
+ readonly COMPLETED: 7;
1530
+ readonly EXPIRED_CHECKIN: 8;
1531
+ readonly EXPIRED_PAYMENT: 9;
1532
+ readonly EXPIRED_BOARDING: 10;
1533
+ readonly REFUND: 11;
1534
+ };
1535
+ type MY_TICKET_STATUS_TYPE = typeof MY_TICKET_STATUS[keyof typeof MY_TICKET_STATUS];
1536
+
1380
1537
  interface TypeOfServiceChild {
1381
1538
  id: number;
1382
- loadType: number;
1539
+ loadType: LOAD_TYPE_TYPE;
1383
1540
  group: number;
1384
1541
  title: string;
1385
1542
  info: string;
@@ -1391,7 +1548,7 @@ interface TypeOfServiceChild {
1391
1548
  */
1392
1549
  interface TypeOfService {
1393
1550
  id: number;
1394
- loadType: number;
1551
+ loadType: LOAD_TYPE_TYPE;
1395
1552
  group: number;
1396
1553
  title: string;
1397
1554
  info: string;
@@ -2112,7 +2269,6 @@ declare const CardOrdererInfo: React$1.FC<CardOrdererInfoProps>;
2112
2269
 
2113
2270
  interface ModalListPassengerLabels {
2114
2271
  title: string;
2115
- sameAsOrderer: string;
2116
2272
  searchPlaceholder: string;
2117
2273
  addPassengerButton: string;
2118
2274
  cancelButton: string;
@@ -2132,11 +2288,11 @@ interface PassengerItem {
2132
2288
  /**
2133
2289
  * Passenger name
2134
2290
  */
2135
- name?: string;
2291
+ fullName?: string;
2136
2292
  /**
2137
2293
  * Passenger category/type (e.g., "ADULT", "CHILD", "INFANT")
2138
2294
  */
2139
- category?: string;
2295
+ ageLabel?: string;
2140
2296
  /**
2141
2297
  * Whether the passenger data is completed
2142
2298
  */
@@ -2183,11 +2339,9 @@ interface ModalListPassengerProps {
2183
2339
  /**
2184
2340
  * Whether "Sama Dengan Pemesan" is checked
2185
2341
  */
2186
- sameAsOrderer: boolean;
2187
2342
  /**
2188
2343
  * Callback when "Sama Dengan Pemesan" switch changes
2189
2344
  */
2190
- onSameAsOrdererChange: (checked: boolean) => void;
2191
2345
  /**
2192
2346
  * Language for labels
2193
2347
  * @default 'id'
@@ -2257,6 +2411,10 @@ interface ModalPassengerFormLabels {
2257
2411
  countryLabel: string;
2258
2412
  countryPlaceholder: string;
2259
2413
  autofill: string;
2414
+ phoneNumberLabel: string;
2415
+ phoneNumberPlaceholder: string;
2416
+ emailLabel: string;
2417
+ emailPlaceholder: string;
2260
2418
  selectIdTypeTitle: string;
2261
2419
  scanIdentityTitle: string;
2262
2420
  scanInstructions1: string;
@@ -2286,9 +2444,16 @@ interface ModalPassengerFormLabels {
2286
2444
  requiredDate: string;
2287
2445
  requiredCity: string;
2288
2446
  requiredCountry: string;
2447
+ requiredPhoneNumber: string;
2448
+ minLengthPhoneNumber: string;
2449
+ invalidEmail: string;
2289
2450
  };
2290
2451
  }
2291
2452
  interface PassengerFormData {
2453
+ /**
2454
+ * Passenger ID (for edit mode)
2455
+ */
2456
+ id?: number;
2292
2457
  /**
2293
2458
  * Passenger title (Tuan, Nyonya, Nona)
2294
2459
  */
@@ -2302,21 +2467,21 @@ interface PassengerFormData {
2302
2467
  */
2303
2468
  idType?: string;
2304
2469
  /**
2305
- * ID number - for adults only
2470
+ * identityId
2306
2471
  */
2307
2472
  idNumber?: string;
2308
2473
  /**
2309
- * Age - for adults only
2474
+ * Age
2310
2475
  */
2311
- age?: number;
2476
+ age?: string;
2312
2477
  /**
2313
2478
  * Birth date - for children/infants only
2314
2479
  */
2315
- date?: string;
2480
+ birthdate?: string;
2316
2481
  /**
2317
- * City ID
2482
+ * Regency ID
2318
2483
  */
2319
- cityId?: string;
2484
+ regencyId?: string;
2320
2485
  /**
2321
2486
  * Ticket class
2322
2487
  */
@@ -2325,14 +2490,6 @@ interface PassengerFormData {
2325
2490
  * Category (ADULT, CHILD, INFANT, ELDERLY)
2326
2491
  */
2327
2492
  category?: string;
2328
- /**
2329
- * Whether the form is completed
2330
- */
2331
- isCompleted?: boolean;
2332
- /**
2333
- * Passenger ID (for edit mode)
2334
- */
2335
- id?: number;
2336
2493
  /**
2337
2494
  * Country code (ISO 3166-1 alpha-2) - for passport holders
2338
2495
  */
@@ -2488,6 +2645,10 @@ interface CardVehicleDetailProps {
2488
2645
  * React Hook Form control
2489
2646
  */
2490
2647
  control: Control<any>;
2648
+ /**
2649
+ * Disable edit vehicle detail
2650
+ */
2651
+ disabled: boolean;
2491
2652
  /**
2492
2653
  * Name of the form field for vehicle number
2493
2654
  * @default "vehicleNumber"
@@ -2558,6 +2719,10 @@ interface CardVehicleOwnerFormProps {
2558
2719
  * React Hook Form control
2559
2720
  */
2560
2721
  control: Control<any>;
2722
+ /**
2723
+ * Disable edit
2724
+ */
2725
+ disabled: boolean;
2561
2726
  /**
2562
2727
  * React Hook Form watch function
2563
2728
  */
@@ -2595,15 +2760,45 @@ interface CardVehicleOwnerFormProps {
2595
2760
  */
2596
2761
  onUpdateCargoQuantity: (ownerId: number, cargoId: number, quantity: number) => void;
2597
2762
  /**
2598
- * Options for company select inputs
2763
+ * Options for company sender select inputs
2764
+ */
2765
+ companySenderOptions?: SelectOption[];
2766
+ /**
2767
+ * Options for company owner select inputs
2599
2768
  */
2600
- companyOptions?: SelectOption[];
2769
+ companyOwnerOptions?: SelectOption[];
2770
+ /**
2771
+ * Options for company logistics select inputs
2772
+ */
2773
+ companyLogisticsOptions?: SelectOption[];
2774
+ /**
2775
+ * Options for company receiver select inputs
2776
+ */
2777
+ companyReceiverOptions?: SelectOption[];
2601
2778
  /**
2602
2779
  * Options for city select inputs
2780
+ */
2781
+ cityOriginOptions?: SelectOption[];
2603
2782
  /**
2604
2783
  * Options for city select inputs
2605
- * @default [] */
2606
- cityOptions?: SelectOption[];
2784
+ */
2785
+ cityDestinationOptions?: SelectOption[];
2786
+ /**
2787
+ * Options for commodity select inputs
2788
+ */
2789
+ commodityOptions?: SelectOption[];
2790
+ /**
2791
+ * Options for load type select inputs
2792
+ */
2793
+ loadTypeOptions?: SelectOption[];
2794
+ /**
2795
+ * Options for industry select inputs
2796
+ */
2797
+ industryOptions?: SelectOption[];
2798
+ /**
2799
+ * Options for load category select inputs
2800
+ */
2801
+ loadCategoryOptions?: SelectOption[];
2607
2802
  /**
2608
2803
  * Language for labels
2609
2804
  * @default 'id'
@@ -2694,6 +2889,10 @@ interface CardBookingTicketProps {
2694
2889
  * Custom labels override
2695
2890
  */
2696
2891
  labels?: Partial<CardBookingTicketLabels>;
2892
+ /**
2893
+ * Provider Logo
2894
+ */
2895
+ providerLogo?: string;
2697
2896
  /**
2698
2897
  * Ship Name (e.g. KMP PORTLINK)
2699
2898
  */
@@ -2705,7 +2904,7 @@ interface CardBookingTicketProps {
2705
2904
  /**
2706
2905
  * Badge color for ship type
2707
2906
  */
2708
- shipTypeColor?: 'brand' | 'danger' | 'important' | 'informative' | 'severe' | 'subtle' | 'success' | 'warning';
2907
+ shipTypeColor?: string;
2709
2908
  /**
2710
2909
  * Departure Day (e.g. Kamis, 25 Sep)
2711
2910
  */
@@ -2733,7 +2932,7 @@ interface CardBookingTicketProps {
2733
2932
  /**
2734
2933
  * Duration string (e.g. 1 jam 10 menit)
2735
2934
  */
2736
- duration?: string;
2935
+ duration?: number;
2737
2936
  /**
2738
2937
  * Total price formatted string (e.g. 50.000)
2739
2938
  */
@@ -2898,6 +3097,7 @@ interface CardMealCatalogLabels {
2898
3097
  currencySymbol: string;
2899
3098
  decrementAriaLabel: string;
2900
3099
  incrementAriaLabel: string;
3100
+ searchPlaceholder: string;
2901
3101
  }
2902
3102
  interface MealItem {
2903
3103
  id: number;
@@ -2950,6 +3150,14 @@ interface CardMealCatalogProps {
2950
3150
  * Optional class name
2951
3151
  */
2952
3152
  className?: string;
3153
+ /**
3154
+ * Current search value
3155
+ */
3156
+ searchValue?: string;
3157
+ /**
3158
+ * Callback when search value changes
3159
+ */
3160
+ onSearchChange?: (value: string) => void;
2953
3161
  }
2954
3162
 
2955
3163
  declare const CardMealCatalog: React$1.FC<CardMealCatalogProps>;
@@ -3361,4 +3569,17 @@ interface CardProfileMenuProps {
3361
3569
 
3362
3570
  declare const CardProfileMenu: React$1.FC<CardProfileMenuProps>;
3363
3571
 
3364
- export { BackgroundTicketCard, BackgroundTicketCardVertical, type BadgeConfig, COUNTRIES, CardAddon, type CardAddonProps, CardBanner, type CardBannerProps, CardBookingTicket, type CardBookingTicketProps, CardFAQ, type CardFAQProps, CardMealCatalog, type CardMealCatalogProps, CardOrdererInfo, type CardOrdererInfoProps, CardPassengerList, type CardPassengerListProps, CardPaymentGuide, type CardPaymentGuideProps, CardPaymentInfo, type CardPaymentInfoProps, CardPaymentMethodList, type CardPaymentMethodListProps, CardPriceDetails, type CardPriceDetailsProps, CardProfileMenu, type CardProfileMenuLabels, type CardProfileMenuProps, CardPromo, type CardPromoProps, CardReview, CardReviewPassenger, type CardReviewPassengerProps, type CardReviewProps, CardServiceMenu, type CardServiceMenuProps, CardStatusOrder, type CardStatusOrderProps, CardTicket, type CardTicketProps, CardTicketSearch, DEFAULT_LABELS$3 as CardTicketSearchDefaultLabels, type CardTicketSearchFormData, type CardTicketSearchLabels, type CardTicketSearchProps, type ServiceMenuItem as CardTicketSearchServiceMenuItem, CardTicketSearchSummary, DEFAULT_LABELS$2 as CardTicketSearchSummaryDefaultLabels, type CardTicketSearchSummaryProps, CardVehicleDetail, type CardVehicleDetailProps, CardVehicleOwnerForm, type CardVehicleOwnerFormProps, type CargoItem, CarouselWithCustomNav, type CarouselWithCustomNavProps, type CountryOption, DEFAULT_DURATION_RANGE, DEFAULT_PRICE_RANGE, DEFAULT_SCROLL_AMOUNT, DEFAULT_SERVICE_TYPES, DEFAULT_SORT_OPTIONS, DEFAULT_TIME_SLOTS, DEFAULT_VEHICLE_ICONS, DateFilter, DEFAULT_LABELS as DateFilterDefaultLabels, type DateFilterLabels, type DateFilterProps, type DateItem, FileUpload, type FileUploadProps, type FilterCount, type HarborItem, InputDynamic, type InputDynamicProps, type InputType, MODAL_PRESETS, type MealCategory, type MealItem, ModalFilterTicket, DEFAULT_LABELS$1 as ModalFilterTicketDefaultLabels, type ModalFilterTicketLabels, type ModalFilterTicketProps, ModalIllustration, type ModalIllustrationButton, type ModalIllustrationProps, ModalListPassenger, type PassengerItem as ModalListPassengerItem, type ModalListPassengerProps, ModalPassengerForm, type ModalPassengerFormProps, type ModalPresetKey, ModalPriceDetail, type ModalPriceDetailProps, ModalSearchHarbor, type ModalSearchHarborProps, ModalSearchTicket, type ModalSearchTicketProps, ModalSelectDate, type ModalSelectDateProps, ModalService, type ModalServiceProps, ModalTotalPassengers, type ModalTotalPassengersProps, ModalTypeOfService, type ModalTypeOfServiceProps, type Passenger, type PassengerClass, type PassengerFormData, type PassengerListItem, type PassengerService, type PassengerType, type PaymentGuideStep, type PaymentMethodCategory, type PaymentStep, type PriceDetailItem, type ProfileMenuSection, type ProfileMenuTab, type RadioOption, type ReservationStep, type ReviewPassengerItem, type SearchSummaryField, type SearchTicketFormData, type SelectOption, type SelectedPassengerItem, type ServiceId, type ServiceItem, SortMenu, type SortMenuProps, type SortOption, type StepStatus, Stepper, type StepperProps, type StepperStep, type TabType, type TypeOfService, type VehicleOwner, getBadgeConfig, getModalPreset, getSortLabel };
3572
+ interface ModalPreviewImageProps {
3573
+ /** Whether the modal is open */
3574
+ open: boolean;
3575
+ /** Callback when the modal open state changes */
3576
+ onOpenChange: (open: boolean) => void;
3577
+ /** The image URL to preview */
3578
+ imageUrl: string | null;
3579
+ /** Alt text for the preview image */
3580
+ alt?: string;
3581
+ }
3582
+
3583
+ declare const ModalPreviewImage: React$1.FC<ModalPreviewImageProps>;
3584
+
3585
+ export { API_CONFIG, API_ENDPOINTS, API_ERROR_MESSAGES, BackgroundTicketCard, BackgroundTicketCardVertical, type BadgeConfig, type BillingDetail, COUNTRIES, CardAddon, type CardAddonProps, CardBanner, type CardBannerProps, CardBookingTicket, type CardBookingTicketProps, CardFAQ, type CardFAQProps, CardMealCatalog, type CardMealCatalogProps, CardOrdererInfo, type CardOrdererInfoProps, CardPassengerList, type CardPassengerListProps, CardPaymentGuide, type CardPaymentGuideProps, CardPaymentInfo, type CardPaymentInfoProps, CardPaymentMethodList, type CardPaymentMethodListProps, CardPriceDetails, type CardPriceDetailsProps, CardProfileMenu, type CardProfileMenuLabels, type CardProfileMenuProps, CardPromo, type CardPromoProps, CardReview, CardReviewPassenger, type CardReviewPassengerProps, type CardReviewProps, CardServiceMenu, type CardServiceMenuProps, CardStatusOrder, type CardStatusOrderProps, CardTicket, type CardTicketProps, CardTicketSearch, DEFAULT_LABELS$3 as CardTicketSearchDefaultLabels, type CardTicketSearchFormData, type CardTicketSearchLabels, type CardTicketSearchProps, type ServiceMenuItem as CardTicketSearchServiceMenuItem, CardTicketSearchSummary, DEFAULT_LABELS$2 as CardTicketSearchSummaryDefaultLabels, type CardTicketSearchSummaryProps, CardVehicleDetail, type CardVehicleDetailProps, CardVehicleOwnerForm, type CardVehicleOwnerFormProps, type CargoItem, CarouselWithCustomNav, type CarouselWithCustomNavProps, type CountryOption, DEFAULT_DURATION_RANGE, DEFAULT_PRICE_RANGE, DEFAULT_SCROLL_AMOUNT, DEFAULT_SERVICE_TYPES, DEFAULT_SORT_OPTIONS, DEFAULT_TIME_SLOTS, DEFAULT_VEHICLE_ICONS, DateFilter, DEFAULT_LABELS as DateFilterDefaultLabels, type DateFilterLabels, type DateFilterProps, type DateItem, type DepartureItem, FileUpload, type FileUploadProps, type FilterCount, GENDER, type GENDER_TYPE, HTTP_STATUS, type HarborItem, IDENTITY_TYPE, type IDENTITY_TYPE_TYPE, InputDynamic, type InputDynamicProps, type InputType, LOAD_TYPE, type LOAD_TYPE_TYPE, MODAL_PRESETS, MY_TICKET_STATUS, type MY_TICKET_STATUS_TYPE, MY_TICKET_TAB, type MY_TICKET_TAB_TYPE, type MealCategory, type MealItem, ModalFilterTicket, DEFAULT_LABELS$1 as ModalFilterTicketDefaultLabels, type ModalFilterTicketLabels, type ModalFilterTicketProps, ModalIllustration, type ModalIllustrationButton, type ModalIllustrationProps, ModalListPassenger, type PassengerItem as ModalListPassengerItem, type ModalListPassengerProps, ModalPassengerForm, type ModalPassengerFormProps, type ModalPresetKey, ModalPreviewImage, type ModalPreviewImageProps, ModalPriceDetail, type ModalPriceDetailProps, ModalSearchHarbor, type ModalSearchHarborProps, ModalSearchTicket, type ModalSearchTicketProps, ModalSelectDate, type ModalSelectDateProps, ModalService, type ModalServiceProps, ModalTotalPassengers, type ModalTotalPassengersProps, ModalTypeOfService, type ModalTypeOfServiceProps, PASSENGER_TYPE, type PASSENGER_TYPE_TYPE, type Passenger, type PassengerClass, type PassengerFormData, type PassengerListItem, type PassengerService, type PassengerType, type PaymentGuideStep, type PaymentMethodCategory, type PaymentStep, type PriceDetailItem, type ProfileMenuSection, type ProfileMenuTab, type Provider, type RadioOption, type ReservationStep, type ReviewPassengerItem, type RouteItem, type SearchSummaryField, type SearchTicketFormData, type SelectOption, type SelectedPassengerItem, type ServiceId, type ServiceItem, SortMenu, type SortMenuProps, type SortOption, type StepStatus, Stepper, type StepperProps, type StepperStep, type TabType, type TypeOfService, type VehicleOwner, getBadgeConfig, getModalPreset, getSortLabel };