import { SplitterPassThrough, SplitterResizeEndEvent, SplitterResizeStartEvent } from 'primeng/types/splitter'; export * from 'primeng/types/splitter'; import * as i0 from '@angular/core'; import { EventEmitter, QueryList, ElementRef } from '@angular/core'; import * as i2 from 'primeng/api'; import { PrimeTemplate } from 'primeng/api'; import { BaseComponent } from 'primeng/basecomponent'; import * as i1 from 'primeng/bind'; import { Bind } from 'primeng/bind'; import { VoidListener, Nullable } from 'primeng/ts-helpers'; import * as _primeuix_styled from '@primeuix/styled'; import { BaseStyle } from 'primeng/base'; /** * * Splitter is utilized to separate and resize panels. * * [Live Demo](https://www.primeng.org/splitter/) * * @module splitterstyle * */ declare enum SplitterClasses { /** * Class name of the root element */ root = "p-splitter", /** * Class name of the gutter element */ gutter = "p-splitter-gutter", /** * Class name of the gutter handle element */ gutterHandle = "p-splitter-gutter-handle" } declare class SplitterStyle extends BaseStyle { name: string; style: _primeuix_styled.StyleType; classes: { root: ({ instance }: { instance: any; }) => string[]; panel: ({ instance }: { instance: any; }) => (string | { 'p-splitterpanel-nested': any; })[]; gutter: string; gutterHandle: string; }; inlineStyles: { root: ({ instance }: { instance: any; }) => (string | { display: string; 'flex-wrap': string; 'flex-direction'?: undefined; } | { 'flex-direction': string; display?: undefined; 'flex-wrap'?: undefined; })[]; }; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵprov: i0.ɵɵInjectableDeclaration; } interface SplitterStyle extends BaseStyle { } /** * Splitter is utilized to separate and resize panels. * @group Components */ declare class Splitter extends BaseComponent { $pcSplitter: Splitter | undefined; bindDirectiveInstance: Bind; onAfterViewChecked(): void; /** * Style class of the component. * @deprecated since v20. Use `class` instead. * @group Props */ styleClass: string | undefined; /** * Style class of the panel. * @group Props */ panelStyleClass: string | undefined; /** * Inline style of the panel. * @group Props */ panelStyle: { [klass: string]: any; } | null | undefined; /** * Defines where a stateful splitter keeps its state, valid values are 'session' for sessionStorage and 'local' for localStorage. * @group Props */ stateStorage: string | undefined; /** * Storage identifier of a stateful Splitter. * @group Props */ stateKey: string | undefined | null; /** * Orientation of the panels. Valid values are 'horizontal' and 'vertical'. * @group Props */ layout: string | undefined; /** * Size of the divider in pixels. * @group Props */ gutterSize: number; /** * Step factor to increment/decrement the size of the panels while pressing the arrow keys. * @group Props */ step: number; /** * Minimum size of the elements relative to 100%. * @group Props */ minSizes: number[]; /** * Size of the elements relative to 100%. * @group Props */ get panelSizes(): number[]; set panelSizes(val: number[]); /** * Callback to invoke when resize ends. * @param {SplitterResizeEndEvent} event - Custom panel resize end event * @group Emits */ onResizeEnd: EventEmitter; /** * Callback to invoke when resize starts. * @param {SplitterResizeStartEvent} event - Custom panel resize start event * @group Emits */ onResizeStart: EventEmitter; templates: QueryList; panelChildren: QueryList; splitter: i0.Signal; nestedState: i0.Signal; panels: any[]; dragging: boolean; mouseMoveListener: VoidListener; mouseUpListener: VoidListener; touchMoveListener: VoidListener; touchEndListener: VoidListener; size: Nullable; gutterElement: Nullable; startPos: Nullable; prevPanelElement: Nullable; nextPanelElement: Nullable; nextPanelSize: Nullable; prevPanelSize: Nullable; _panelSizes: number[]; prevPanelIndex: Nullable; timer: any; prevSize: any; _componentStyle: SplitterStyle; onAfterContentInit(): void; onAfterViewInit(): void; resizeStart(event: TouchEvent | MouseEvent, index: number, isKeyDown?: boolean): void; onResize(event: MouseEvent, step?: number, isKeyDown?: boolean): void; resizeEnd(event: MouseEvent | TouchEvent): void; onGutterMouseDown(event: MouseEvent, index: number): void; onGutterTouchStart(event: TouchEvent, index: number): void; onGutterTouchMove(event: any): void; onGutterTouchEnd(event: TouchEvent): void; repeat(event: any, index: any, step: any): void; setTimer(event: any, index: any, step: any): void; clearTimer(): void; onGutterKeyUp(event: any): void; onGutterKeyDown(event: any, index: any): void; validateResize(newPrevPanelSize: number, newNextPanelSize: number): boolean; bindMouseListeners(): void; bindTouchListeners(): void; unbindMouseListeners(): void; unbindTouchListeners(): void; clear(): void; isStateful(): boolean; getStorage(): Storage | undefined; saveState(): void; restoreState(): boolean; gutterStyle(): { width: string; height?: undefined; } | { height: string; width?: undefined; }; horizontal(): boolean; get dataP(): string | undefined; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; static ngAcceptInputType_gutterSize: unknown; static ngAcceptInputType_step: unknown; } declare class SplitterModule { static ɵfac: i0.ɵɵFactoryDeclaration; static ɵmod: i0.ɵɵNgModuleDeclaration; static ɵinj: i0.ɵɵInjectorDeclaration; } export { Splitter, SplitterClasses, SplitterModule, SplitterStyle };