import { TemplateRef } from '@angular/core'; import { PassThrough, PassThroughOption } from 'primeng/api'; /** * Defines the scrollbar visibility variant for ScrollArea component. * @group Types */ type ScrollAreaVariant = 'auto' | 'hover' | 'scroll' | 'always' | 'hidden'; /** * Custom pass-through(pt) options. * @template I Type of instance. * * @see {@link ScrollArea.pt} * @group Interface */ interface ScrollAreaPassThroughOptions { /** * Used to pass attributes to the root's DOM element. */ root?: PassThroughOption; /** * Used to pass attributes to the viewport's DOM element. */ viewport?: PassThroughOption; /** * Used to pass attributes to the content's DOM element. */ content?: PassThroughOption; /** * Used to pass attributes to the scrollbar's DOM element. */ scrollbar?: PassThroughOption; /** * Used to pass attributes to the handle's DOM element. */ handle?: PassThroughOption; /** * Used to pass attributes to the corner's DOM element. */ corner?: PassThroughOption; } /** * Defines valid pass-through options in ScrollArea component. * @see {@link ScrollAreaPassThroughOptions} * * @template I Type of instance. */ type ScrollAreaPassThrough = PassThrough>; /** * Defines valid templates in ScrollArea. * @group Templates */ interface ScrollAreaTemplates { /** * Custom content template. */ content(): TemplateRef; } export type { ScrollAreaPassThrough, ScrollAreaPassThroughOptions, ScrollAreaTemplates, ScrollAreaVariant };