import * as i0 from '@angular/core'; import { RendererFactory2, ElementRef, OnInit, OnDestroy, ChangeDetectorRef } from '@angular/core'; import * as i1 from '@skyux/core'; import { SkyMutationObserverService, SkyAppWindowRef, SkyCoreAdapterService } from '@skyux/core'; import { Subject, Observable, BehaviorSubject } from 'rxjs'; import { SkyLibResourcesService } from '@skyux/i18n'; /** * Adapter service for use when the split view component needs to manipulate the DOM * @internal */ declare class SkySplitViewAdapterService { #private; constructor(observerSvc: SkyMutationObserverService, rendererFactory: RendererFactory2, windowRef: SkyAppWindowRef); bindHeightToWindow(elementRef: ElementRef, unsubscribeSubject: Subject): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵprov: i0.ɵɵInjectableDeclaration; } /** * Specifies the content to display in the split view's list panel. */ declare class SkySplitViewDrawerComponent implements OnInit, OnDestroy { #private; /** * The ARIA label for the list panel. This sets the panel's `aria-label` attribute to provide a text equivalent for screen readers * [to support accessibility](https://developer.blackbaud.com/skyux/learn/accessibility). * For more information about the `aria-label` attribute, see the [WAI-ARIA definition](https://www.w3.org/TR/wai-aria/#aria-label). */ ariaLabel: string | undefined; /** * Sets the list panel's width in pixels. * @default 320 */ set width(value: number | undefined); get width(): number | undefined; isMobile: boolean; splitViewDrawerId: string; widthDefault: number; widthMax: number; widthMin: number; widthTolerance: number; constructor(); ngOnInit(): void; ngOnDestroy(): void; onResizeHandleMouseDown(event: MouseEvent): void; onMouseMove(event: MouseEvent): void; onHandleRelease(): void; onResizeHandleChange(event: Event): void; onWindowResize(): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } /** * Internal service for operations between the split view drawer and workspace. * @internal */ declare class SkySplitViewService { #private; get backButtonTextStream(): Observable; drawerVisible: BehaviorSubject; splitViewElementRef: ElementRef | undefined; set isMobile(value: boolean); get isMobile(): boolean; get isMobileStream(): Observable; constructor(resources: SkyLibResourcesService); backButtonClick(): void; updateBackButtonText(text: string): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵprov: i0.ɵɵInjectableDeclaration; } type SkySplitViewDockType = 'none' | 'fill'; declare enum SkySplitViewMessageType { /** * Places focus on the first focusable element in the workspace. */ FocusWorkspace = 0 } interface SkySplitViewMessage { /** * Sets the `SkySplitViewMessageType`. */ type?: SkySplitViewMessageType; } /** * Displays a list alongside a workspace where users can view details for selected items * and take actions. */ declare class SkySplitViewComponent implements OnInit, OnDestroy { #private; /** * The label for the button that appears in the workspace header in responsive mode. * The button returns users to the list. * @default "Back to list" */ set backButtonText(value: string); /** * Whether the split view's height is bound to the window height. * @default false * @deprecated We recommend using the `dock` input instead. An example of this can * be found in the developer code examples. */ set bindHeightToWindow(bindToHeight: boolean); get bindHeightToWindow(): boolean; /** * How the split view docks to its container. Use `fill` to dock * the split view to the container's size where the container is a `sky-page` component * with its `layout` input set to `fit`, or where the container is another element with * a relative or absolute position and a fixed size. * @default "none" */ set dock(value: SkySplitViewDockType | undefined); get dock(): SkySplitViewDockType; /** * The observable that sends commands to the split view component. * The commands should respect the `SkySplitViewMessage` type. */ messageStream: Subject; drawerComponent: SkySplitViewDrawerComponent | undefined; set drawerVisible(value: boolean); get drawerVisible(): boolean; isMobile: boolean; nextButtonDisabled: boolean; previousButtonDisabled: boolean; get workspaceVisible(): boolean; constructor(adapter: SkySplitViewAdapterService, changeDetectorRef: ChangeDetectorRef, coreAdapterService: SkyCoreAdapterService, elementRef: ElementRef, splitViewService: SkySplitViewService); ngOnInit(): void; ngOnDestroy(): void; onWorkspaceEnterComplete(): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } /** * Contains the content, footer, and header to display in the split view's workspace panel. */ declare class SkySplitViewWorkspaceComponent { protected breakpoint: i0.Signal<"xs" | "sm" | "md" | "lg" | undefined>; /** * The ARIA label for the workspace panel. This sets the panel's `aria-label` attribute to provide a text equivalent for screen readers * [to support accessibility](https://developer.blackbaud.com/skyux/learn/accessibility). * For more information about the `aria-label` attribute, see the [WAI-ARIA definition](https://www.w3.org/TR/wai-aria/#aria-label). */ ariaLabel: string | undefined; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } /** * Specifies the content to display in the split view's workspace panel. */ declare class SkySplitViewWorkspaceContentComponent { static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } /** * Specifies the footer to display in the split view's workspace panel. This component is often used with a summary action bar. */ declare class SkySplitViewWorkspaceFooterComponent { static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } /** * Specifies the header to display in the split view's workspace panel. * @internal */ declare class SkySplitViewWorkspaceHeaderComponent implements OnDestroy, OnInit { #private; backButtonText: string | undefined; constructor(splitViewSvc: SkySplitViewService); ngOnInit(): void; onShowDrawerButtonClick(): void; ngOnDestroy(): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } declare class SkySplitViewModule { static ɵfac: i0.ɵɵFactoryDeclaration; static ɵmod: i0.ɵɵNgModuleDeclaration; static ɵinj: i0.ɵɵInjectorDeclaration; } export { SkySplitViewMessageType, SkySplitViewModule, SkySplitViewComponent as λ1, SkySplitViewDrawerComponent as λ2, SkySplitViewWorkspaceComponent as λ3, SkySplitViewWorkspaceContentComponent as λ4, SkySplitViewWorkspaceFooterComponent as λ5, SkySplitViewWorkspaceHeaderComponent as λ6 }; export type { SkySplitViewDockType, SkySplitViewMessage };