import { PassThrough, PassThroughOption } from 'primeng/api'; import { CarouselPassThrough, CarouselContentPassThrough, CarouselItemPassThrough } from 'primeng/types/carousel'; /** * Represents a pending action dispatched from toolbar to the active gallery item. * @group Interface */ interface GalleryPendingAction { /** * The type of the action. */ type: 'zoom-in' | 'zoom-out' | 'rotate-left' | 'rotate-right' | 'flip-x' | 'flip-y' | 'download'; /** * Timestamp to ensure repeated identical actions trigger new effects. */ timestamp: number; } /** * Event fired when the gallery's active index changes. * @group Events */ interface GalleryActiveIndexChangeEvent { /** * The original event that triggered the change. */ originalEvent?: Event; /** * The new active index value. */ value: number; } /** * Defines the state of a gallery item. * @group Interface */ interface GalleryItemState { /** * The index of the item in the gallery. */ index: number; /** * Whether the item is the active (visible) item. */ isActive: boolean; /** * The current pan position. */ position: { x: number; y: number; }; /** * The current zoom scale. */ scale: number; /** * The current rotation in degrees. */ rotation: number; /** * The current flip state. */ flip: { x: number; y: number; }; } /** * Defines valid pass-through options in Gallery component. * @template I Type of instance. * @group Interface */ interface GalleryPassThroughOptions { /** * Used to pass attributes to the root's DOM element. */ root?: PassThroughOption; } /** * Defines valid pass-through options in Gallery component. * @see {@link GalleryPassThroughOptions} * @template I Type of instance. */ type GalleryPassThrough = PassThrough>; /** * Defines valid pass-through options in GalleryBackdrop component. * @template I Type of instance. * @group Interface */ interface GalleryBackdropPassThroughOptions { /** * Used to pass attributes to the root's DOM element. */ root?: PassThroughOption; } /** * @see {@link GalleryBackdropPassThroughOptions} * @template I Type of instance. */ type GalleryBackdropPassThrough = PassThrough>; /** * Defines valid pass-through options in GalleryHeader component. * @template I Type of instance. * @group Interface */ interface GalleryHeaderPassThroughOptions { /** * Used to pass attributes to the root's DOM element. */ root?: PassThroughOption; } /** * @see {@link GalleryHeaderPassThroughOptions} * @template I Type of instance. */ type GalleryHeaderPassThrough = PassThrough>; /** * Defines valid pass-through options in GalleryContent component. * @template I Type of instance. * @group Interface */ interface GalleryContentPassThroughOptions { /** * Used to pass attributes to the root's DOM element. */ root?: PassThroughOption; } /** * @see {@link GalleryContentPassThroughOptions} * @template I Type of instance. */ type GalleryContentPassThrough = PassThrough>; /** * Defines valid pass-through options in GalleryFooter component. * @template I Type of instance. * @group Interface */ interface GalleryFooterPassThroughOptions { /** * Used to pass attributes to the root's DOM element. */ root?: PassThroughOption; } /** * @see {@link GalleryFooterPassThroughOptions} * @template I Type of instance. */ type GalleryFooterPassThrough = PassThrough>; /** * Defines valid pass-through options in GalleryItem component. * @template I Type of instance. * @group Interface */ interface GalleryItemPassThroughOptions { /** * Used to pass attributes to the root's DOM element. */ root?: PassThroughOption; } /** * @see {@link GalleryItemPassThroughOptions} * @template I Type of instance. */ type GalleryItemPassThrough = PassThrough>; /** * Defines valid pass-through options in GalleryPrev component. * @template I Type of instance. * @group Interface */ interface GalleryPrevPassThroughOptions { /** * Used to pass attributes to the root's DOM element. */ root?: PassThroughOption; } /** * @see {@link GalleryPrevPassThroughOptions} * @template I Type of instance. */ type GalleryPrevPassThrough = PassThrough>; /** * Defines valid pass-through options in GalleryNext component. * @template I Type of instance. * @group Interface */ interface GalleryNextPassThroughOptions { /** * Used to pass attributes to the root's DOM element. */ root?: PassThroughOption; } /** * @see {@link GalleryNextPassThroughOptions} * @template I Type of instance. */ type GalleryNextPassThrough = PassThrough>; /** * Defines valid pass-through options in GalleryToolbar component. * @template I Type of instance. * @group Interface */ interface GalleryToolbarPassThroughOptions { /** * Used to pass attributes to the root's DOM element. */ root?: PassThroughOption; } /** * @see {@link GalleryToolbarPassThroughOptions} * @template I Type of instance. */ type GalleryToolbarPassThrough = PassThrough>; /** * Defines valid pass-through options in GalleryToolbarItem component. * @template I Type of instance. * @group Interface */ interface GalleryToolbarItemPassThroughOptions { /** * Used to pass attributes to the root's DOM element. */ root?: PassThroughOption; } /** * @see {@link GalleryToolbarItemPassThroughOptions} * @template I Type of instance. */ type GalleryToolbarItemPassThrough = PassThrough>; /** * Defines valid pass-through options in GalleryZoomIn component. * @template I Type of instance. * @group Interface */ interface GalleryZoomInPassThroughOptions { /** * Used to pass attributes to the root's DOM element. */ root?: PassThroughOption; } /** * @see {@link GalleryZoomInPassThroughOptions} * @template I Type of instance. */ type GalleryZoomInPassThrough = PassThrough>; /** * Defines valid pass-through options in GalleryZoomOut component. * @template I Type of instance. * @group Interface */ interface GalleryZoomOutPassThroughOptions { /** * Used to pass attributes to the root's DOM element. */ root?: PassThroughOption; } /** * @see {@link GalleryZoomOutPassThroughOptions} * @template I Type of instance. */ type GalleryZoomOutPassThrough = PassThrough>; /** * Defines valid pass-through options in GalleryZoomToggle component. * @template I Type of instance. * @group Interface */ interface GalleryZoomTogglePassThroughOptions { /** * Used to pass attributes to the root's DOM element. */ root?: PassThroughOption; } /** * @see {@link GalleryZoomTogglePassThroughOptions} * @template I Type of instance. */ type GalleryZoomTogglePassThrough = PassThrough>; /** * Defines valid pass-through options in GalleryRotateLeft component. * @template I Type of instance. * @group Interface */ interface GalleryRotateLeftPassThroughOptions { /** * Used to pass attributes to the root's DOM element. */ root?: PassThroughOption; } /** * @see {@link GalleryRotateLeftPassThroughOptions} * @template I Type of instance. */ type GalleryRotateLeftPassThrough = PassThrough>; /** * Defines valid pass-through options in GalleryRotateRight component. * @template I Type of instance. * @group Interface */ interface GalleryRotateRightPassThroughOptions { /** * Used to pass attributes to the root's DOM element. */ root?: PassThroughOption; } /** * @see {@link GalleryRotateRightPassThroughOptions} * @template I Type of instance. */ type GalleryRotateRightPassThrough = PassThrough>; /** * Defines valid pass-through options in GalleryFlipX component. * @template I Type of instance. * @group Interface */ interface GalleryFlipXPassThroughOptions { /** * Used to pass attributes to the root's DOM element. */ root?: PassThroughOption; } /** * @see {@link GalleryFlipXPassThroughOptions} * @template I Type of instance. */ type GalleryFlipXPassThrough = PassThrough>; /** * Defines valid pass-through options in GalleryFlipY component. * @template I Type of instance. * @group Interface */ interface GalleryFlipYPassThroughOptions { /** * Used to pass attributes to the root's DOM element. */ root?: PassThroughOption; } /** * @see {@link GalleryFlipYPassThroughOptions} * @template I Type of instance. */ type GalleryFlipYPassThrough = PassThrough>; /** * Defines valid pass-through options in GalleryDownload component. * @template I Type of instance. * @group Interface */ interface GalleryDownloadPassThroughOptions { /** * Used to pass attributes to the root's DOM element. */ root?: PassThroughOption; } /** * @see {@link GalleryDownloadPassThroughOptions} * @template I Type of instance. */ type GalleryDownloadPassThrough = PassThrough>; /** * Defines valid pass-through options in GalleryFullScreen component. * @template I Type of instance. * @group Interface */ interface GalleryFullScreenPassThroughOptions { /** * Used to pass attributes to the root's DOM element. */ root?: PassThroughOption; } /** * @see {@link GalleryFullScreenPassThroughOptions} * @template I Type of instance. */ type GalleryFullScreenPassThrough = PassThrough>; /** * Defines valid pass-through options in GalleryThumbnail component. * @template I Type of instance. * @group Interface */ interface GalleryThumbnailPassThroughOptions { /** * Used to pass attributes to the root's DOM element. */ root?: PassThroughOption; /** * Used to pass attributes to the internal Carousel component. */ pcCarousel?: CarouselPassThrough; /** * Used to pass attributes to the internal CarouselContent component. */ pcCarouselContent?: CarouselContentPassThrough; /** * Used to pass attributes to the internal CarouselItem components. */ pcCarouselItem?: CarouselItemPassThrough; } /** * @see {@link GalleryThumbnailPassThroughOptions} * @template I Type of instance. */ type GalleryThumbnailPassThrough = PassThrough>; /** * Defines valid pass-through options in GalleryThumbnailContent component. * @template I Type of instance. * @group Interface */ interface GalleryThumbnailContentPassThroughOptions { /** * Used to pass attributes to the root's DOM element. */ root?: PassThroughOption; } /** * @see {@link GalleryThumbnailContentPassThroughOptions} * @template I Type of instance. */ type GalleryThumbnailContentPassThrough = PassThrough>; /** * Defines valid pass-through options in GalleryThumbnailItem component. * @template I Type of instance. * @group Interface */ interface GalleryThumbnailItemPassThroughOptions { /** * Used to pass attributes to the root's DOM element. */ root?: PassThroughOption; } /** * @see {@link GalleryThumbnailItemPassThroughOptions} * @template I Type of instance. */ type GalleryThumbnailItemPassThrough = PassThrough>; export type { GalleryActiveIndexChangeEvent, GalleryBackdropPassThrough, GalleryBackdropPassThroughOptions, GalleryContentPassThrough, GalleryContentPassThroughOptions, GalleryDownloadPassThrough, GalleryDownloadPassThroughOptions, GalleryFlipXPassThrough, GalleryFlipXPassThroughOptions, GalleryFlipYPassThrough, GalleryFlipYPassThroughOptions, GalleryFooterPassThrough, GalleryFooterPassThroughOptions, GalleryFullScreenPassThrough, GalleryFullScreenPassThroughOptions, GalleryHeaderPassThrough, GalleryHeaderPassThroughOptions, GalleryItemPassThrough, GalleryItemPassThroughOptions, GalleryItemState, GalleryNextPassThrough, GalleryNextPassThroughOptions, GalleryPassThrough, GalleryPassThroughOptions, GalleryPendingAction, GalleryPrevPassThrough, GalleryPrevPassThroughOptions, GalleryRotateLeftPassThrough, GalleryRotateLeftPassThroughOptions, GalleryRotateRightPassThrough, GalleryRotateRightPassThroughOptions, GalleryThumbnailContentPassThrough, GalleryThumbnailContentPassThroughOptions, GalleryThumbnailItemPassThrough, GalleryThumbnailItemPassThroughOptions, GalleryThumbnailPassThrough, GalleryThumbnailPassThroughOptions, GalleryToolbarItemPassThrough, GalleryToolbarItemPassThroughOptions, GalleryToolbarPassThrough, GalleryToolbarPassThroughOptions, GalleryZoomInPassThrough, GalleryZoomInPassThroughOptions, GalleryZoomOutPassThrough, GalleryZoomOutPassThroughOptions, GalleryZoomTogglePassThrough, GalleryZoomTogglePassThroughOptions };