/// import { HeaderProps } from '@sberdevices/plasma-ui/components/Header/Header'; import { AnyObject, AssistantAppState, AssistantInstance } from '../../types'; export declare type PushScreenParams, Name extends keyof Params> = Name extends keyof Params ? [Name, Params[Name]] : [Name]; export interface PushScreenFn { (name: T, params: P extends void ? never : P1): void; (name: T, params?: never): void; } export interface ReplaceScreensFn { (screens: Array<{ name: T; params?: P extends void ? never : P1; }>): void; (screens: Array<{ name: T; params?: never; }>): void; } export interface PageMethods>, PageType extends keyof PageStateType = keyof PageStateType> { pushHistory: (name: T, data: PageStateType[T]) => void; pushScreen: PushScreenFn; replacePreviousScreens: ReplaceScreensFn; goToScreen: (name: T) => void; popScreen: () => void; changeState: (data: State) => void; sendData: AssistantInstance['sendData']; setAssistantState: (state: T) => void; } export declare type PageComponent> = Partial>> = React.ComponentType & { name: Name; state: PageStateType[Name]; params: PageParamsType[Name]; assistant: AssistantInstance | null; fallbackComponent?: React.ReactNode; header?: HeaderProps; }>; //# sourceMappingURL=types.d.ts.map