import * as i0 from '@angular/core';
import { PipeTransform, OnDestroy, OnInit } from '@angular/core';
import * as i6 from '@angular/router';
import { NavigationExtras, Route } from '@angular/router';
import { SkyModalConfigurationInterface } from '@skyux/modals';
import * as i3 from '@skyux/router';
import { SkyRecentlyAccessedGetLinksArgs } from '@skyux/router';
import * as i6$1 from '@skyux/layout';
import * as i1 from '@skyux/theme';
import * as i2 from '@angular/common';
import * as i4 from '@skyux/indicators';
import * as rxjs from 'rxjs';
import * as i1$1 from '@skyux/core';
import * as i8 from '@skyux/icon';
import * as i1$2 from '@skyux/i18n';
/**
* Displays buttons after the page title.
* @example
* ```markup
* New
* ```
*/
declare class SkyActionHubButtonsComponent {
static ɵfac: i0.ɵɵFactoryDeclaration;
static ɵcmp: i0.ɵɵComponentDeclaration;
}
type SkyActionHubNeedsAttentionClickHandler = (_: SkyActionHubNeedsAttentionClickHandlerArgs) => void;
interface SkyActionHubNeedsAttentionClickHandlerArgs {
/**
* The `SkyPageLink`, `SkyPageModalLink`, or `SkyRecentLink` that was clicked.
*/
item: unknown;
}
/**
* Specifies action items that require attention and directs users to pages
* where they can resolve them.
*/
interface SkyActionHubNeedsAttention {
/**
* The title of the action item.
*/
title: string;
/**
* Text to display after the title.
* @deprecated Use `title` instead.
*/
message?: string;
/**
* The link to resolve the action item.
*/
permalink?: {
route?: {
commands: any[];
extras?: NavigationExtras;
};
url?: string;
};
/**
* The click handler for the action item.
*/
click?: SkyActionHubNeedsAttentionClickHandler;
}
/**
* A list of actions that users must perform based on business requirements or best practices.
*/
type SkyActionHubNeedsAttentionInput = SkyActionHubNeedsAttention[] | 'loading';
/**
* @internal
*/
interface SkyPageLinkInterface {
/**
* The link text.
*/
label: string;
}
/**
* Displays links to related information or recently accessed items.
*/
interface SkyPageLink extends SkyPageLinkInterface {
/**
* The link destination.
*/
permalink: {
route?: {
commands: any[];
extras?: NavigationExtras;
};
url?: string;
};
}
type SkyPageLinksInput = SkyPageLink[] | 'loading' | undefined;
type SkyPageModalLinkClickHandler = SkyActionHubNeedsAttentionClickHandler;
interface SkyPageModalLinkClickHandlerArgs extends SkyActionHubNeedsAttentionClickHandlerArgs {
}
/**
* Displays links to related information or recently accessed items.
*/
interface SkyPageModalLink extends SkyPageLinkInterface {
/**
* The link destination.
*/
permalink?: {
route?: {
commands: any[];
extras?: NavigationExtras;
};
url?: string;
};
/**
* The modal parameters.
*/
modal?: {
component: any;
config?: SkyModalConfigurationInterface;
};
/**
* The click handler for the link, which should be used to open a modal dialog.
*/
click?: SkyPageModalLinkClickHandler;
}
type SkyPageModalLinksInput = SkyPageModalLink[] | 'loading' | undefined;
/**
* Link that also has a date field to sort by.
*
* @property lastAccessed The date when the link was last accessed. Valid types are a Date object or ISO-8601 string.
*/
interface SkyRecentLink extends SkyPageLink {
lastAccessed: Date | string;
}
/**
* Recently accessed links to display in a link list component.
*/
type SkyRecentLinksInput = SkyRecentLink[] | 'loading' | SkyRecentlyAccessedGetLinksArgs | undefined;
/**
* Creates an action hub to direct user attention to important
* actions and provide quick access to common tasks.
*/
declare class SkyActionHubComponent {
#private;
/**
* The list of actions that users must perform based on business requirements or best practices, or `"loading"` to display a wait indicator.
*/
set needsAttention(value: SkyActionHubNeedsAttentionInput | undefined);
get needsAttention(): SkyActionHubNeedsAttentionInput | undefined;
/**
* Links back to a parent page.
*/
parentLink: SkyPageLink | undefined;
/**
* The list of recently accessed links, or `"loading"` to display a wait indicator.
*/
recentLinks: SkyRecentLinksInput;
/**
* The list of related links, or `"loading"` to display a wait indicator.
*/
relatedLinks: SkyPageLinksInput;
/**
* The list of settings with modal parameters, or `"loading"` to display a wait indicator.
*/
settingsLinks: SkyPageModalLinksInput;
/**
* The page title.
* @default ""
*/
title: string;
needsAttentionArray: SkyActionHubNeedsAttention[];
static ɵfac: i0.ɵɵFactoryDeclaration;
static ɵcmp: i0.ɵɵComponentDeclaration;
}
/**
* Displays additional content after the action items.
*/
declare class SkyActionHubContentComponent {
static ɵfac: i0.ɵɵFactoryDeclaration;
static ɵcmp: i0.ɵɵComponentDeclaration;
}
declare class SkyActionHubRelatedLinksSortPipe implements PipeTransform {
transform(relatedLinks: T | 'loading' | undefined): T | 'loading' | [];
static ɵfac: i0.ɵɵFactoryDeclaration;
static ɵpipe: i0.ɵɵPipeDeclaration;
}
type SkyRecentLinksResolved = SkyRecentLink[] | 'loading' | undefined;
declare class SkyActionHubRecentLinksResolvePipe implements PipeTransform, OnDestroy {
#private;
transform(recentLinks: SkyRecentLinksInput): SkyRecentLinksResolved;
ngOnDestroy(): void;
static ɵfac: i0.ɵɵFactoryDeclaration;
static ɵpipe: i0.ɵɵPipeDeclaration;
}
/**
* A wrapper for each link in a link list.
*/
declare class SkyLinkListItemComponent {
static ɵfac: i0.ɵɵFactoryDeclaration;
static ɵcmp: i0.ɵɵComponentDeclaration;
}
/**
* A component that displays a list of links, such as within a `` component.
*/
declare class SkyLinkListComponent {
/**
* The text to display as the list's heading.
*/
readonly headingText: i0.InputSignal;
/**
* Option to pass links as an array of `SkyPageLink` objects or `'loading'` to display a loading indicator.
*/
readonly links: i0.InputSignal;
protected readonly linkItems: i0.Signal;
protected readonly hasLinks: i0.Signal;
protected readonly linksArray: i0.Signal;
static ɵfac: i0.ɵɵFactoryDeclaration;
static ɵcmp: i0.ɵɵComponentDeclaration;
}
/**
* A component that displays a list of recently accessed links, such as within a `` component.
*/
declare class SkyLinkListRecentlyAccessedComponent {
/**
* Option to pass links as an array of `SkyRecentLink` objects,
* a `SkyRecentlyAccessedGetLinksArgs` object for `SkyRecentlyAccessedService`,
* or `'loading'` to display a loading indicator.
*/
readonly recentLinks: i0.InputSignal;
static ɵfac: i0.ɵɵFactoryDeclaration;
static ɵcmp: i0.ɵɵComponentDeclaration;
}
declare class SkyLinkListModule {
static ɵfac: i0.ɵɵFactoryDeclaration;
static ɵmod: i0.ɵɵNgModuleDeclaration;
static ɵinj: i0.ɵɵInjectorDeclaration;
}
/**
* A component that displays a list of links such as within a `` component.
*/
declare class SkyModalLinkListComponent {
#private;
/**
* Option to pass links as an array of `SkyPageModalLink` objects or `'loading'` to display a loading indicator.
*/
readonly links: i0.InputSignal;
/**
* The text to display as the list's heading.
*/
readonly headingText: i0.InputSignal;
protected readonly linksArray: i0.Signal;
protected openModal(link: SkyPageModalLink): void;
static ɵfac: i0.ɵɵFactoryDeclaration;
static ɵcmp: i0.ɵɵComponentDeclaration;
}
declare class LinkAsPipe implements PipeTransform {
transform(value: SkyActionHubNeedsAttention | SkyPageLink | SkyPageModalLink | undefined, linkAs: 'button'): value is SkyActionHubNeedsAttention & {
click: () => void;
};
transform(value: SkyActionHubNeedsAttention | SkyPageLink | SkyPageModalLink | undefined, linkAs: 'href' | 'skyHref'): value is SkyActionHubNeedsAttention & {
permalink: {
url: string;
};
};
transform(value: SkyActionHubNeedsAttention | SkyPageLink | SkyPageModalLink | undefined, linkAs: 'skyAppLink'): value is SkyActionHubNeedsAttention & {
permalink: {
route: Route;
};
};
transform(value: SkyActionHubNeedsAttention | SkyPageLink | SkyPageModalLink | undefined, linkAs: undefined): false;
static ɵfac: i0.ɵɵFactoryDeclaration;
static ɵpipe: i0.ɵɵPipeDeclaration;
}
declare class LinkAsModule {
static ɵfac: i0.ɵɵFactoryDeclaration;
static ɵmod: i0.ɵɵNgModuleDeclaration;
static ɵinj: i0.ɵɵInjectorDeclaration;
}
declare class SkyModalLinkListModule {
static ɵfac: i0.ɵɵFactoryDeclaration;
static ɵmod: i0.ɵɵNgModuleDeclaration;
static ɵinj: i0.ɵɵInjectorDeclaration;
}
/**
* @internal
*/
declare class SkyNeedsAttentionComponent {
#private;
readonly items: i0.InputSignal;
protected readonly displayItems: rxjs.Observable;
protected readonly displayItemsTrackByFn: (item: SkyActionHubNeedsAttention | undefined) => string;
constructor();
static ɵfac: i0.ɵɵFactoryDeclaration;
static ɵcmp: i0.ɵɵComponentDeclaration;
}
/**
* @internal
*/
declare class SkyNeedsAttentionModule {
static ɵfac: i0.ɵɵFactoryDeclaration;
static ɵmod: i0.ɵɵNgModuleDeclaration;
static ɵinj: i0.ɵɵInjectorDeclaration;
}
/**
* Displays buttons within the page header for page actions and applies spacing between buttons.
* Appears below the page header details.
*/
declare class SkyPageHeaderActionsComponent {
static ɵfac: i0.ɵɵFactoryDeclaration;
static ɵcmp: i0.ɵɵComponentDeclaration;
}
/**
* Displays alerts within the page header and applies spacing between alerts. Appears above the page title.
*/
declare class SkyPageHeaderAlertsComponent {
static ɵfac: i0.ɵɵFactoryDeclaration;
static ɵcmp: i0.ɵɵComponentDeclaration;
}
/**
* Displays an avatar within the page header to the left of the page title.
* If no size is specified for the avatar component it will display at size
* small on xs breakpoints and size large on small and above breakpoints.
*/
declare class SkyPageHeaderAvatarComponent {
constructor();
static ɵfac: i0.ɵɵFactoryDeclaration;
static ɵcmp: i0.ɵɵComponentDeclaration;
}
/**
* Displays page heading's contents using spacing that corresponds to the parent page's layout
*/
declare class SkyPageHeaderComponent {
/**
* A link to the parent page of the current page.
*/
parentLink: SkyPageLink | undefined;
/**
* The title of the current page.
*/
pageTitle: string | undefined;
static ɵfac: i0.ɵɵFactoryDeclaration;
static ɵcmp: i0.ɵɵComponentDeclaration;
}
/**
* Displays additional information in the page header, like record details.
* Appears below the title and above the page actions.
*/
declare class SkyPageHeaderDetailsComponent {
static ɵfac: i0.ɵɵFactoryDeclaration;
static ɵcmp: i0.ɵɵComponentDeclaration;
}
declare class SkyPageHeaderModule {
static ɵfac: i0.ɵɵFactoryDeclaration;
static ɵmod: i0.ɵɵNgModuleDeclaration;
static ɵinj: i0.ɵɵInjectorDeclaration;
}
/**
* Import into any component library module that needs to use resource strings.
*/
declare class SkyPagesResourcesModule {
static ɵfac: i0.ɵɵFactoryDeclaration;
static ɵmod: i0.ɵɵNgModuleDeclaration;
static ɵinj: i0.ɵɵInjectorDeclaration;
}
type SkyPageLayoutType = 'none' | 'fit' | 'blocks' | 'list' | 'tabs';
/**
* Displays a page using the specified layout. The page component is a responsive container,
* meaning content will respect the breakpoints within the page element instead of the window.
* This is helpful if there is other content to the left or right of the page.
*/
declare class SkyPageComponent implements OnInit, OnDestroy {
#private;
/**
* The page layout that applies spacing to the page header and content. Use the layout
* that corresponds with the top-level component type used on the page, or use `fit` to
* constrain the page contents to the available viewport.
* Use `none` for custom content that does not adhere to predefined spacing or constraints.
* @default "none"
*/
layout: i0.InputSignal;
/**
* A help key that identifies the page's default [global help](https://developer.blackbaud.com/skyux/learn/develop/global-help) content to display.
*/
set helpKey(value: string | undefined);
ngOnInit(): void;
ngOnDestroy(): void;
static ɵfac: i0.ɵɵFactoryDeclaration;
static ɵcmp: i0.ɵɵComponentDeclaration;
}
/**
* Displays page contents using spacing that corresponds to the parent
* page's layout.
*/
declare class SkyPageContentComponent {
static ɵfac: i0.ɵɵFactoryDeclaration;
static ɵcmp: i0.ɵɵComponentDeclaration;
}
/**
* Displays page links on the right side of the page, or below the page content
* on mobile devices.
*/
declare class SkyPageLinksComponent {
static ɵfac: i0.ɵɵFactoryDeclaration;
static ɵcmp: i0.ɵɵComponentDeclaration;
}
declare class SkyPageModule {
static ɵfac: i0.ɵɵFactoryDeclaration;
static ɵmod: i0.ɵɵNgModuleDeclaration;
static ɵinj: i0.ɵɵInjectorDeclaration;
}
declare class SkyActionHubModule {
static ɵfac: i0.ɵɵFactoryDeclaration;
static ɵmod: i0.ɵɵNgModuleDeclaration;
static ɵinj: i0.ɵɵInjectorDeclaration;
}
export { SkyActionHubModule, SkyLinkListModule, SkyModalLinkListModule, SkyNeedsAttentionModule, SkyPageHeaderModule, SkyPageModule, SkyActionHubComponent as λ1, SkyPageHeaderAvatarComponent as λ10, SkyPageHeaderAlertsComponent as λ11, SkyPageLinksComponent as λ12, SkyLinkListComponent as λ13, SkyLinkListItemComponent as λ14, SkyLinkListRecentlyAccessedComponent as λ15, SkyNeedsAttentionComponent as λ16, SkyActionHubButtonsComponent as λ2, SkyActionHubContentComponent as λ3, SkyPageHeaderComponent as λ4, SkyModalLinkListComponent as λ5, SkyPageComponent as λ6, SkyPageContentComponent as λ7, SkyPageHeaderDetailsComponent as λ8, SkyPageHeaderActionsComponent as λ9 };
export type { SkyActionHubNeedsAttention, SkyActionHubNeedsAttentionClickHandler, SkyActionHubNeedsAttentionClickHandlerArgs, SkyActionHubNeedsAttentionInput, SkyPageLayoutType, SkyPageLink, SkyPageLinksInput, SkyPageModalLink, SkyPageModalLinkClickHandler, SkyPageModalLinkClickHandlerArgs, SkyPageModalLinksInput, SkyRecentLink, SkyRecentLinksInput };