@trycourier/courier-ui-inbox
Version:
Inbox components for the Courier web UI
44 lines (43 loc) • 2.45 kB
TypeScript
import { CourierInboxFeedType } from '../types/feed-type';
import { CourierInboxHeaderFactoryProps, CourierInboxListItemActionFactoryProps, CourierInboxListItemFactoryProps, CourierInboxPaginationItemFactoryProps, CourierInboxStateEmptyFactoryProps, CourierInboxStateErrorFactoryProps, CourierInboxStateLoadingFactoryProps } from '../types/factories';
import { CourierInboxTheme } from '../types/courier-inbox-theme';
import { CourierInboxThemeManager } from '../types/courier-inbox-theme-manager';
export declare class CourierInbox extends HTMLElement {
private _currentFeed;
private _themeManager;
get theme(): CourierInboxTheme;
setLightTheme(theme: CourierInboxTheme): void;
setDarkTheme(theme: CourierInboxTheme): void;
private _shadow;
private _list;
private _datastoreListener;
private _authListener;
private _style;
private _header;
private _headerFactory;
private _onMessageClick?;
private _onMessageActionClick?;
private _onMessageLongPress?;
private _defaultProps;
static get observedAttributes(): string[];
constructor(themeManager?: CourierInboxThemeManager);
private refreshTheme;
private getStyles;
setHeader(factory: (props: CourierInboxHeaderFactoryProps | undefined | null) => HTMLElement): void;
removeHeader(): void;
setLoadingState(factory: (props: CourierInboxStateLoadingFactoryProps | undefined | null) => HTMLElement): void;
setEmptyState(factory: (props: CourierInboxStateEmptyFactoryProps | undefined | null) => HTMLElement): void;
setErrorState(factory: (props: CourierInboxStateErrorFactoryProps | undefined | null) => HTMLElement): void;
setListItem(factory: (props: CourierInboxListItemFactoryProps | undefined | null) => HTMLElement): void;
setPaginationItem(factory: (props: CourierInboxPaginationItemFactoryProps | undefined | null) => HTMLElement): void;
onMessageClick(handler?: (props: CourierInboxListItemFactoryProps) => void): void;
onMessageActionClick(handler?: (props: CourierInboxListItemActionFactoryProps) => void): void;
onMessageLongPress(handler?: (props: CourierInboxListItemFactoryProps) => void): void;
setFeedType(feedType: CourierInboxFeedType): void;
private updateHeader;
private load;
refresh(): void;
connectedCallback(): void;
disconnectedCallback(): void;
attributeChangedCallback(name: string, oldValue: string, newValue: string): void;
}