import type { ApplicationTodoCenterPageV2, ApplicationTodoInteractionResultV2, ApplicationTodoItemV2, ApplicationTodoViewV2, AppRouteManifestKind } from 'openxiangda-contracts/browser'; import { Component, type ComponentType, type ErrorInfo, type ReactNode } from 'react'; export type StandardUserSurfaceDevice = 'desktop' | 'mobile'; export type StandardUserPageKind = AppRouteManifestKind; export interface StandardUserPageRouteMetadata { entryCode: string; routeCode: string; pattern: string; pathname: string; search: string; hash: string; params: Readonly>; } export interface StandardUserPageFrameProps { pageKind: StandardUserPageKind; device: StandardUserSurfaceDevice; mobile: boolean; children: ReactNode; route: Readonly; canGoBack: boolean; back(): void; } export interface StandardApplicationTodoQuery { view: ApplicationTodoViewV2; keyword: string; unread: boolean; offset: number; limit: number; } export type StandardApplicationTodoQueryUpdate = Partial>; export interface StandardApplicationTodoCenterProps { device: StandardUserSurfaceDevice; mobile: boolean; items: readonly Readonly[]; counts: Readonly; total: number; loading: boolean; loadingMore: boolean; error: string | null; query: Readonly; hasMore: boolean; setQuery(update: StandardApplicationTodoQueryUpdate): void; refresh(): Promise; loadMore(): Promise; recordInteraction(item: Readonly, kind: 'read' | 'click'): Promise; openItem(item: Readonly): Promise; } export interface StandardUserSurfaceComponentPair { desktop: ComponentType; mobile: ComponentType; } export interface StandardUserSurfaceContributions { frame: StandardUserSurfaceComponentPair; applicationTodoCenter: StandardUserSurfaceComponentPair; } interface StandardUserSurfaceErrorBoundaryProps { children: ReactNode; resetKey: string; } interface StandardUserSurfaceErrorBoundaryState { failed: boolean; } /** * Contains an application renderer failure without replacing the platform * Router, RuntimeBoundary, identity state or standard-page controller. */ export declare class StandardUserSurfaceErrorBoundary extends Component { state: StandardUserSurfaceErrorBoundaryState; static getDerivedStateFromError(): StandardUserSurfaceErrorBoundaryState; componentDidCatch(_error: Error, _info: ErrorInfo): void; componentDidUpdate(previous: Readonly): void; render(): string | number | bigint | boolean | import("react/jsx-runtime").JSX.Element | Iterable | Promise> | Iterable | null | undefined> | null | undefined; } export {}; //# sourceMappingURL=standard-user-surfaces.d.ts.map