import { CarouselContentPassThrough, CarouselResponsiveOptions, CarouselOrientation, CarouselPageEvent, CarouselItemTemplateContext, CarouselItemPassThrough, CarouselNextPassThrough, CarouselPrevPassThrough, CarouselIndicatorsPassThrough, CarouselIndicatorPassThrough } from 'primeng/types/carousel';
export * from 'primeng/types/carousel';
import * as primeng_carousel from 'primeng/carousel';
import * as _angular_core from '@angular/core';
import { ElementRef, TemplateRef } from '@angular/core';
import * as i1 from 'primeng/bind';
import { Bind } from 'primeng/bind';
import { BaseComponent } from 'primeng/basecomponent';
import * as i8 from 'primeng/api';
import { Header, Footer } from 'primeng/api';
import { ButtonDirectiveOptions } from 'primeng/types/button';
import { CSSProperties } from 'primeng/types/shared';
import { BaseStyle } from 'primeng/base';

/**
 * CarouselContent is the scrollable track element that contains carousel items.
 * @group Components
 */
declare class CarouselContent extends BaseComponent<CarouselContentPassThrough> {
    componentName: string;
    bindDirectiveInstance: Bind;
    root: any;
    isVertical: _angular_core.Signal<boolean>;
    flexDirection: _angular_core.Signal<"column" | "row">;
    overflowX: _angular_core.Signal<"scroll" | null>;
    overflowY: _angular_core.Signal<"scroll" | null>;
    overscrollX: _angular_core.Signal<"contain" | null>;
    overscrollY: _angular_core.Signal<"contain" | null>;
    dataAutosize: _angular_core.Signal<"" | null>;
    dataSwiping: _angular_core.Signal<"" | null>;
    dataOrientation: _angular_core.Signal<any>;
    dataAlign: _angular_core.Signal<any>;
    dataPage: _angular_core.Signal<any>;
    slidesPerPage: _angular_core.Signal<any>;
    spacingItems: _angular_core.Signal<string>;
    scrollSnapType: _angular_core.Signal<any>;
    onPointerDown(e: PointerEvent): void;
    onPointerMove(e: PointerEvent): void;
    onPointerUp(e: PointerEvent): void;
    onWheel(e: WheelEvent): void;
    onAfterViewChecked(): void;
    constructor();
    static ɵfac: _angular_core.ɵɵFactoryDeclaration<CarouselContent, never>;
    static ɵcmp: _angular_core.ɵɵComponentDeclaration<CarouselContent, "p-carousel-content", never, {}, {}, never, ["*"], true, [{ directive: typeof i1.Bind; inputs: {}; outputs: {}; }]>;
}

/**
 *
 * Carousel is a content slider featuring various customization options.
 *
 * [Live Demo](https://www.primeng.org/carousel/)
 *
 * @module carouselstyle
 *
 */
declare enum CarouselClasses {
    /**
     * Class name of the root element
     */
    root = "p-carousel",
    /**
     * Class name of the header element
     */
    header = "p-carousel-header",
    /**
     * Class name of the content container element
     */
    contentContainer = "p-carousel-content-container",
    /**
     * Class name of the content element
     */
    content = "p-carousel-content",
    /**
     * Class name of the previous button element
     */
    pcPrevButton = "p-carousel-prev-button",
    /**
     * Class name of the viewport element
     */
    viewport = "p-carousel-viewport",
    /**
     * Class name of the item list element
     */
    itemList = "p-carousel-item-list",
    /**
     * Class name of the item clone element
     */
    itemClone = "p-carousel-item-clone",
    /**
     * Class name of the item element
     */
    item = "p-carousel-item",
    /**
     * Class name of the next button element
     */
    pcNextButton = "p-carousel-next-button",
    /**
     * Class name of the indicator list element
     */
    indicatorList = "p-carousel-indicator-list",
    /**
     * Class name of the indicator element
     */
    indicator = "p-carousel-indicator",
    /**
     * Class name of the indicator button element
     */
    indicatorButton = "p-carousel-indicator-button",
    /**
     * Class name of the footer element
     */
    footer = "p-carousel-footer"
}
declare class CarouselStyle extends BaseStyle {
    name: string;
    style: string;
    classes: {
        root: ({ instance }: {
            instance: any;
        }) => (string | {
            'p-carousel-vertical': any;
            'p-carousel-horizontal': boolean;
        })[];
        header: string;
        contentContainer: string;
        content: string;
        pcPrevButton: ({ instance }: {
            instance: any;
        }) => (string | {
            'p-disabled': any;
        })[];
        viewport: string;
        itemList: string;
        itemClone: ({ instance, index }: {
            instance: any;
            index: any;
        }) => (string | {
            'p-carousel-item-active': boolean;
            'p-carousel-item-start': boolean;
            'p-carousel-item-end': boolean;
        })[];
        item: ({ instance, index }: {
            instance: any;
            index: any;
        }) => (string | {
            'p-carousel-item-active': boolean;
            'p-carousel-item-start': boolean;
            'p-carousel-item-end': boolean;
        })[];
        pcNextButton: ({ instance }: {
            instance: any;
        }) => (string | {
            'p-disabled': any;
        })[];
        indicatorList: ({ instance }: {
            instance: any;
        }) => any[];
        indicator: ({ instance, index }: {
            instance: any;
            index: any;
        }) => (string | {
            'p-carousel-indicator-active': boolean;
        })[];
        indicatorButton: ({ instance }: {
            instance: any;
        }) => any[];
        footer: string;
        compositionRoot: string;
        compositionIndicator: ({ instance, index }: {
            instance: any;
            index: any;
        }) => (string | {
            'p-carousel-indicator-active': boolean;
        })[];
        compositionContent: ({ instance }: {
            instance: any;
        }) => string[];
        compositionItem: string;
        compositionPrev: ({ instance }: {
            instance: any;
        }) => {
            'p-disabled': any;
        }[];
        compositionNext: ({ instance }: {
            instance: any;
        }) => {
            'p-disabled': any;
        }[];
    };
    static ɵfac: _angular_core.ɵɵFactoryDeclaration<CarouselStyle, never>;
    static ɵprov: _angular_core.ɵɵInjectableDeclaration<CarouselStyle>;
}
interface CarouselStyle extends BaseStyle {
}

/**
 * Base class containing all legacy (data-driven) carousel logic.
 * Extended by the Carousel component.
 * @deprecated Use the composition API of Carousel instead (e.g. p-carousel-content, p-carousel-item).
 */
declare abstract class CarouselLegacyBase extends BaseComponent {
    /**
     * Index of the first item.
     * @defaultValue 0
     * @group Props
     */
    page: _angular_core.InputSignalWithTransform<number, unknown>;
    /**
     * Number of items per page.
     * @defaultValue 1
     * @group Props
     */
    numVisible: _angular_core.InputSignalWithTransform<number, unknown>;
    /**
     * Number of items to scroll.
     * @defaultValue 1
     * @group Props
     */
    numScroll: _angular_core.InputSignalWithTransform<number, unknown>;
    /**
     * An array of options for responsive design.
     * @see {CarouselResponsiveOptions}
     * @group Props
     */
    responsiveOptions: _angular_core.InputSignal<CarouselResponsiveOptions[] | undefined>;
    /**
     * Specifies the layout of the component.
     * @group Props
     */
    orientation: _angular_core.InputSignal<CarouselOrientation>;
    /**
     * Height of the viewport in vertical layout.
     * @group Props
     */
    verticalViewPortHeight: _angular_core.InputSignal<string>;
    /**
     * Style class of main content.
     * @group Props
     */
    contentClass: _angular_core.InputSignal<string>;
    /**
     * Style class of the indicator items.
     * @group Props
     */
    indicatorsContentClass: _angular_core.InputSignal<string>;
    /**
     * Inline style of the indicator items.
     * @group Props
     */
    indicatorsContentStyle: _angular_core.InputSignal<CSSProperties>;
    /**
     * Style class of the indicators.
     * @group Props
     */
    indicatorStyleClass: _angular_core.InputSignal<string>;
    /**
     * Style of the indicators.
     * @group Props
     */
    indicatorStyle: _angular_core.InputSignal<CSSProperties>;
    /**
     * An array of objects to display.
     * @defaultValue null
     * @group Props
     */
    value: _angular_core.InputSignal<any[] | undefined>;
    /**
     * Defines if scrolling would be infinite.
     * @group Props
     */
    circular: _angular_core.InputSignalWithTransform<boolean, unknown>;
    /**
     * Whether to display indicator container.
     * @group Props
     */
    showIndicators: _angular_core.InputSignalWithTransform<boolean, unknown>;
    /**
     * Whether to display navigation buttons in container.
     * @group Props
     */
    showNavigators: _angular_core.InputSignalWithTransform<boolean, unknown>;
    /**
     * Time in milliseconds to scroll items automatically.
     * @group Props
     */
    autoplayInterval: _angular_core.InputSignalWithTransform<number, unknown>;
    /**
     * Configuration object forwarded to the underlying button.
     * @group Props
     */
    prevButtonProps: _angular_core.InputSignal<ButtonDirectiveOptions>;
    /**
     * Configuration object forwarded to the underlying button.
     * @group Props
     */
    nextButtonProps: _angular_core.InputSignal<ButtonDirectiveOptions>;
    /**
     * Callback to invoke after scroll.
     * @param {CarouselPageEvent} event - Custom page event.
     * @group Emits
     */
    onPage: _angular_core.OutputEmitterRef<CarouselPageEvent>;
    itemsContainer: _angular_core.Signal<ElementRef<any> | undefined>;
    indicatorContent: _angular_core.Signal<ElementRef<any> | undefined>;
    headerFacet: _angular_core.Signal<Header | undefined>;
    footerFacet: _angular_core.Signal<Footer | undefined>;
    /**
     * Custom item template.
     * @group Templates
     */
    itemTemplate: _angular_core.Signal<TemplateRef<CarouselItemTemplateContext<any>> | undefined>;
    /**
     * Custom header template.
     * @group Templates
     */
    headerTemplate: _angular_core.Signal<TemplateRef<void> | undefined>;
    /**
     * Custom footer template.
     * @group Templates
     */
    footerTemplate: _angular_core.Signal<TemplateRef<void> | undefined>;
    /**
     * Custom previous icon template.
     * @group Templates
     */
    previousIconTemplate: _angular_core.Signal<TemplateRef<void> | undefined>;
    /**
     * Custom next icon template.
     * @group Templates
     */
    nextIconTemplate: _angular_core.Signal<TemplateRef<void> | undefined>;
    _componentStyle: CarouselStyle;
    _numVisible: number;
    _numScroll: number;
    _oldNumScroll: number;
    prevState: {
        numScroll: number;
        numVisible: number;
        value: unknown[];
    };
    defaultNumScroll: number;
    defaultNumVisible: number;
    _page: _angular_core.WritableSignal<number>;
    carouselStyle: HTMLStyleElement | null;
    id: string | undefined;
    totalShiftedItems: _angular_core.WritableSignal<number>;
    isRemainingItemsAdded: boolean;
    animationTimeout: ReturnType<typeof setTimeout> | undefined;
    translateTimeout: ReturnType<typeof setTimeout> | undefined;
    remainingItems: number;
    startPos: {
        x: number;
        y: number;
    } | null;
    documentResizeListener: VoidFunction | null;
    clonedItemsForStarting: _angular_core.WritableSignal<unknown[]>;
    clonedItemsForFinishing: _angular_core.WritableSignal<unknown[]>;
    allowAutoplay: _angular_core.WritableSignal<boolean>;
    interval: ReturnType<typeof setInterval> | undefined;
    isCreated: boolean;
    swipeThreshold: number;
    window: Window;
    viewportStyle: _angular_core.Signal<{
        height: string;
    }>;
    constructor();
    legacyOnAfterContentInit(): void;
    legacyOnAfterContentChecked(): void;
    createStyle(): void;
    calculatePosition(): void;
    setCloneItems(): void;
    firstIndex(): number;
    lastIndex(): number;
    totalDots(): number;
    totalDotsArray(): number[];
    isVertical(): boolean;
    isCircular(): boolean | undefined;
    isAutoplay(): boolean | 0;
    isForwardNavDisabled(): boolean;
    isBackwardNavDisabled(): boolean;
    isEmpty(): boolean;
    hasHeader(): boolean;
    hasFooter(): boolean;
    ariaLive(): "polite" | "off";
    showDefaultPrevIcon(): boolean;
    showPrevIconTemplate(): boolean;
    showDefaultNextIcon(): boolean;
    showNextIconTemplate(): boolean;
    isCloneStartAriaHidden(): boolean;
    isCloneStartActive(): boolean;
    isCloneStartEnd(index: number): boolean;
    isItemActive(index: number): boolean;
    isItemAriaHidden(index: number): boolean;
    isItemStart(index: number): boolean;
    isItemEnd(index: number): boolean;
    isIndicatorActive(index: number): boolean;
    getIndicatorAriaCurrent(index: number): "page" | undefined;
    getIndicatorTabindex(index: number): -1 | 0;
    navForward(e: MouseEvent | TouchEvent, index?: number): void;
    navBackward(e: MouseEvent | TouchEvent, index?: number): void;
    onDotClick(e: MouseEvent, index: number): void;
    onIndicatorKeydown(event: KeyboardEvent): void;
    onRightKey(): void;
    onLeftKey(): void;
    onHomeKey(): void;
    onEndKey(): void;
    onTabKey(): void;
    findFocusedIndicatorIndex(): number;
    changedFocusedIndicator(prevInd: number, nextInd: number): void;
    step(dir: number, page?: number): void;
    startAutoplay(): void;
    stopAutoplay(changeAllow?: boolean): void;
    isPlaying(): boolean;
    onTransitionEnd(): void;
    onTouchStart(e: TouchEvent): void;
    onTouchMove(e: TouchEvent | MouseEvent): void;
    onTouchEnd(e: TouchEvent): void;
    changePageOnTouch(e: TouchEvent | MouseEvent, diff: number): void;
    ariaPrevButtonLabel(): string | undefined;
    ariaSlideLabel(): string | undefined;
    ariaNextButtonLabel(): string | undefined;
    ariaSlideNumber(value: number): string | undefined;
    ariaPageLabel(value: number): string | undefined;
    getIndicatorPTOptions(key: string, index: number): any;
    getItemPTOptions(key: string, index: number): any;
    bindDocumentListeners(): void;
    unbindDocumentListeners(): void;
    legacyOnDestroy(): void;
    static ɵfac: _angular_core.ɵɵFactoryDeclaration<CarouselLegacyBase, never>;
    static ɵdir: _angular_core.ɵɵDirectiveDeclaration<CarouselLegacyBase, never, never, { "page": { "alias": "page"; "required": false; "isSignal": true; }; "numVisible": { "alias": "numVisible"; "required": false; "isSignal": true; }; "numScroll": { "alias": "numScroll"; "required": false; "isSignal": true; }; "responsiveOptions": { "alias": "responsiveOptions"; "required": false; "isSignal": true; }; "orientation": { "alias": "orientation"; "required": false; "isSignal": true; }; "verticalViewPortHeight": { "alias": "verticalViewPortHeight"; "required": false; "isSignal": true; }; "contentClass": { "alias": "contentClass"; "required": false; "isSignal": true; }; "indicatorsContentClass": { "alias": "indicatorsContentClass"; "required": false; "isSignal": true; }; "indicatorsContentStyle": { "alias": "indicatorsContentStyle"; "required": false; "isSignal": true; }; "indicatorStyleClass": { "alias": "indicatorStyleClass"; "required": false; "isSignal": true; }; "indicatorStyle": { "alias": "indicatorStyle"; "required": false; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; "circular": { "alias": "circular"; "required": false; "isSignal": true; }; "showIndicators": { "alias": "showIndicators"; "required": false; "isSignal": true; }; "showNavigators": { "alias": "showNavigators"; "required": false; "isSignal": true; }; "autoplayInterval": { "alias": "autoplayInterval"; "required": false; "isSignal": true; }; "prevButtonProps": { "alias": "prevButtonProps"; "required": false; "isSignal": true; }; "nextButtonProps": { "alias": "nextButtonProps"; "required": false; "isSignal": true; }; }, { "onPage": "onPage"; }, ["headerFacet", "footerFacet", "itemTemplate", "headerTemplate", "footerTemplate", "previousIconTemplate", "nextIconTemplate"], never, true, never>;
}

/**
 * CarouselItem represents an individual item in the composition-based carousel.
 * @group Components
 */
declare class CarouselItem extends BaseComponent<CarouselItemPassThrough> {
    componentName: string;
    bindDirectiveInstance: Bind;
    /**
     * The value/identifier of the carousel item.
     * @group Props
     */
    value: _angular_core.InputSignal<unknown>;
    root: any;
    dataOrientation: _angular_core.Signal<any>;
    dataAlign: _angular_core.Signal<any>;
    dataPage: _angular_core.Signal<any>;
    dataSwiping: _angular_core.Signal<"" | null>;
    dataAutosize: _angular_core.Signal<"" | null>;
    flexBasis: _angular_core.Signal<"auto" | "calc(100% / var(--px-slides-per-page) - var(--px-spacing-items) * (var(--px-slides-per-page) - 1) / var(--px-slides-per-page))">;
    scrollSnapAlign: _angular_core.Signal<any>;
    onAfterViewChecked(): void;
    static ɵfac: _angular_core.ɵɵFactoryDeclaration<CarouselItem, never>;
    static ɵcmp: _angular_core.ɵɵComponentDeclaration<CarouselItem, "p-carousel-item", never, { "value": { "alias": "value"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, [{ directive: typeof i1.Bind; inputs: {}; outputs: {}; }]>;
}

/**
 * CarouselNext is a directive for the next navigation button.
 * @group Directives
 */
declare class CarouselNext extends BaseComponent<CarouselNextPassThrough> {
    componentName: string;
    root: any;
    _componentStyle: CarouselStyle;
    hostClass: _angular_core.Signal<any>;
    dataOrientation: _angular_core.Signal<any>;
    dataAlign: _angular_core.Signal<any>;
    dataPage: _angular_core.Signal<any>;
    dataDisabled: _angular_core.Signal<any>;
    dataSwiping: _angular_core.Signal<"" | null>;
    attrDisabled: _angular_core.Signal<true | null>;
    onClick(): void;
    static ɵfac: _angular_core.ɵɵFactoryDeclaration<CarouselNext, never>;
    static ɵdir: _angular_core.ɵɵDirectiveDeclaration<CarouselNext, "[pCarouselNext]", never, {}, {}, never, never, true, never>;
}

/**
 * CarouselPrev is a directive for the previous navigation button.
 * @group Directives
 */
declare class CarouselPrev extends BaseComponent<CarouselPrevPassThrough> {
    componentName: string;
    root: any;
    _componentStyle: CarouselStyle;
    hostClass: _angular_core.Signal<any>;
    dataOrientation: _angular_core.Signal<any>;
    dataAlign: _angular_core.Signal<any>;
    dataPage: _angular_core.Signal<any>;
    dataDisabled: _angular_core.Signal<any>;
    dataSwiping: _angular_core.Signal<"" | null>;
    attrDisabled: _angular_core.Signal<true | null>;
    onClick(): void;
    static ɵfac: _angular_core.ɵɵFactoryDeclaration<CarouselPrev, never>;
    static ɵdir: _angular_core.ɵɵDirectiveDeclaration<CarouselPrev, "[pCarouselPrev]", never, {}, {}, never, never, true, never>;
}

/**
 * CarouselIndicators renders the list of page indicators.
 * Auto-generates button indicators based on snap points.
 * @group Components
 */
declare class CarouselIndicators extends BaseComponent<CarouselIndicatorsPassThrough> {
    componentName: string;
    bindDirectiveInstance: Bind;
    root: any;
    hostClass: _angular_core.Signal<any>;
    dataOrientation: _angular_core.Signal<any>;
    dataAlign: _angular_core.Signal<any>;
    dataPage: _angular_core.Signal<any>;
    dataSwiping: _angular_core.Signal<"" | null>;
    pages: _angular_core.Signal<number[]>;
    onAfterViewChecked(): void;
    static ɵfac: _angular_core.ɵɵFactoryDeclaration<CarouselIndicators, never>;
    static ɵcmp: _angular_core.ɵɵComponentDeclaration<CarouselIndicators, "p-carousel-indicators", never, {}, {}, never, never, true, [{ directive: typeof i1.Bind; inputs: {}; outputs: {}; }]>;
}

/**
 * CarouselIndicator is a directive for an individual page indicator button.
 * @group Directives
 */
declare class CarouselIndicator extends BaseComponent<CarouselIndicatorPassThrough> {
    componentName: string;
    /**
     * The page index this indicator represents.
     * @group Props
     */
    page: _angular_core.InputSignalWithTransform<number, unknown>;
    root: any;
    bindDirectiveInstance: Bind;
    _componentStyle: CarouselStyle;
    isActive: _angular_core.Signal<boolean>;
    hostClass: _angular_core.Signal<any>;
    dataOrientation: _angular_core.Signal<any>;
    dataAlign: _angular_core.Signal<any>;
    dataPage: _angular_core.Signal<any>;
    dataActive: _angular_core.Signal<"" | null>;
    dataSwiping: _angular_core.Signal<"" | null>;
    onClick(): void;
    onAfterViewChecked(): void;
    static ɵfac: _angular_core.ɵɵFactoryDeclaration<CarouselIndicator, never>;
    static ɵdir: _angular_core.ɵɵDirectiveDeclaration<CarouselIndicator, "[pCarouselIndicator]", never, { "page": { "alias": "page"; "required": false; "isSignal": true; }; }, {}, never, never, true, [{ directive: typeof i1.Bind; inputs: {}; outputs: {}; }]>;
}

/**
 * Carousel is a content slider featuring various customization options.
 * @group Components
 */
declare class Carousel extends CarouselLegacyBase {
    componentName: string;
    bindDirectiveInstance: Bind;
    onAfterViewChecked(): void;
    _compositionContent: _angular_core.Signal<readonly CarouselContent[]>;
    isCompositionMode: _angular_core.Signal<boolean>;
    hostClass: _angular_core.Signal<string | undefined>;
    /**
     * Alignment of the carousel items (composition mode).
     * @group Props
     * @defaultValue 'start'
     */
    align: _angular_core.InputSignal<"start" | "center" | "end">;
    /**
     * Alias for orientation used by composition mode host bindings.
     * Delegates to the existing `orientation` input.
     */
    compositionOrientation: _angular_core.Signal<primeng_carousel.CarouselOrientation>;
    /**
     * Alias for align used by composition mode host bindings.
     * Delegates to the `align` input.
     */
    compositionAlign: _angular_core.Signal<"start" | "center" | "end">;
    /**
     * Whether the carousel should loop (composition mode).
     * @group Props
     * @defaultValue false
     */
    loop: _angular_core.InputSignalWithTransform<boolean, unknown>;
    /**
     * Scroll snap type applied to the track (composition mode).
     * @group Props
     * @defaultValue 'mandatory'
     */
    snapType: _angular_core.InputSignal<"mandatory" | "proximity">;
    /**
     * Spacing between carousel items in pixels (composition mode).
     * @group Props
     * @defaultValue 16
     */
    spacing: _angular_core.InputSignalWithTransform<number, unknown>;
    /**
     * Whether the carousel should auto size items (composition mode).
     * @group Props
     * @defaultValue false
     */
    autoSize: _angular_core.InputSignalWithTransform<boolean, unknown>;
    /**
     * Alias for autoSize used by composition mode host bindings.
     */
    compositionAutoSize: _angular_core.Signal<boolean>;
    dataScope: _angular_core.Signal<"carousel" | null>;
    dataPart: _angular_core.Signal<"root" | null>;
    dataOrientation: _angular_core.Signal<primeng_carousel.CarouselOrientation | null>;
    dataAlign: _angular_core.Signal<"start" | "center" | "end" | null>;
    dataPage: _angular_core.Signal<number | null>;
    dataSwiping: _angular_core.Signal<"" | null>;
    dataAutosize: _angular_core.Signal<"" | null>;
    /**
     * How many slides are visible per page (composition mode). Supports fractions (e.g. 1.5).
     * @group Props
     * @defaultValue 1
     */
    slidesPerPage: _angular_core.InputSignalWithTransform<number, unknown>;
    /**
     * Index of the active slide (composition mode).
     * @group Props
     */
    slide: _angular_core.InputSignal<number | undefined>;
    /**
     * Callback fired when the carousel's page changes (composition mode).
     * @group Emits
     */
    onPageChange: _angular_core.OutputEmitterRef<{
        value: number;
    }>;
    /**
     * Callback fired when the active slide changes (composition mode).
     * @group Emits
     */
    onSlideChange: _angular_core.OutputEmitterRef<{
        value: number;
    }>;
    swiping: _angular_core.WritableSignal<boolean>;
    isNextDisabled: _angular_core.WritableSignal<boolean>;
    isPrevDisabled: _angular_core.WritableSignal<boolean>;
    snapPoints: _angular_core.WritableSignal<Set<number>>;
    pageState: _angular_core.WritableSignal<number>;
    contentEl: _angular_core.WritableSignal<HTMLElement | null>;
    private _snapPointsRef;
    private _scrollSnapsRef;
    private _initialPageApplied;
    private _initialControlledScroll;
    private _resizeObserver;
    private _mutationObserver;
    private _intersectionObserver;
    private _scrollTimeout;
    private _wheelTimeout;
    private _scrollListener;
    private _destroyed;
    private _swipeStartPoint;
    private _isRealSwipe;
    private _itemSelector;
    private _areSetsEqual;
    constructor();
    onAfterContentInit(): void;
    onAfterContentChecked(): void;
    onDestroy(): void;
    resolveSnapType(): string;
    setupObservers(): void;
    private _applyInitialPage;
    private _applyControlledPage;
    private _applyControlledSlide;
    private _observeResizeItems;
    private _observeIntersectionItems;
    computeSnapPoints(): void;
    setPage(page: number): void;
    setToClosest(): number | undefined;
    scrollToPage(pageNum?: number, instant?: boolean): void;
    next(): void;
    prev(): void;
    scrollTo(snapPoint: number, instant?: boolean): void;
    scrollToSlide(slideNum: number, instant?: boolean): void;
    setContentEl(el: HTMLElement): void;
    onContentPointerDown(e: PointerEvent): void;
    onContentPointerMove(e: PointerEvent): void;
    onContentPointerUp(e: PointerEvent): void;
    onContentWheel(e: WheelEvent): void;
    static ɵfac: _angular_core.ɵɵFactoryDeclaration<Carousel, never>;
    static ɵcmp: _angular_core.ɵɵComponentDeclaration<Carousel, "p-carousel", never, { "align": { "alias": "align"; "required": false; "isSignal": true; }; "loop": { "alias": "loop"; "required": false; "isSignal": true; }; "snapType": { "alias": "snapType"; "required": false; "isSignal": true; }; "spacing": { "alias": "spacing"; "required": false; "isSignal": true; }; "autoSize": { "alias": "autoSize"; "required": false; "isSignal": true; }; "slidesPerPage": { "alias": "slidesPerPage"; "required": false; "isSignal": true; }; "slide": { "alias": "slide"; "required": false; "isSignal": true; }; }, { "onPageChange": "onPageChange"; "onSlideChange": "onSlideChange"; }, ["_compositionContent"], ["*", "p-header", "p-footer"], true, [{ directive: typeof i1.Bind; inputs: {}; outputs: {}; }]>;
}
declare class CarouselModule {
    static ɵfac: _angular_core.ɵɵFactoryDeclaration<CarouselModule, never>;
    static ɵmod: _angular_core.ɵɵNgModuleDeclaration<CarouselModule, never, [typeof Carousel, typeof CarouselContent, typeof CarouselItem, typeof CarouselNext, typeof CarouselPrev, typeof CarouselIndicators, typeof CarouselIndicator, typeof i8.SharedModule], [typeof Carousel, typeof CarouselContent, typeof CarouselItem, typeof CarouselNext, typeof CarouselPrev, typeof CarouselIndicators, typeof CarouselIndicator, typeof i8.SharedModule]>;
    static ɵinj: _angular_core.ɵɵInjectorDeclaration<CarouselModule>;
}

export { Carousel, CarouselClasses, CarouselContent, CarouselIndicator, CarouselIndicators, CarouselItem, CarouselModule, CarouselNext, CarouselPrev, CarouselStyle };
