Skip to content

Latest commit

 

History

History
494 lines (421 loc) · 23.7 KB

xstate-tree.api.md

File metadata and controls

494 lines (421 loc) · 23.7 KB

API Report File for "@koordinates/xstate-tree"

Do not edit this file. It is a report generated by API Extractor.

import { AnyEventObject } from 'xstate';
import { AnyFunction } from 'xstate';
import { AnyStateMachine } from 'xstate';
import { BaseActionObject } from 'xstate';
import { ComponentPropsWithRef } from 'react';
import { ContextFrom } from 'xstate';
import { EventFrom } from 'xstate';
import { EventObject } from 'xstate';
import { History as History_2 } from 'history';
import { InterpreterFrom } from 'xstate';
import { JSXElementConstructor } from 'react';
import { ParsedQuery } from 'query-string';
import { default as React_2 } from 'react';
import { ResolveTypegenMeta } from 'xstate';
import { ServiceMap } from 'xstate';
import type { StateFrom } from 'xstate';
import { StateMachine } from 'xstate';
import { TypegenDisabled } from 'xstate';
import * as Z from 'zod';

// @public (undocumented)
export type Actions<TMachine extends AnyStateMachine, TSelectorsOutput, TOut> = (args: {
    send: InterpreterFrom<TMachine>["send"];
    selectors: TSelectorsOutput;
}) => TOut;

// @public
export type ActionsFrom<TMachine extends AnyXstateTreeMachine> = TMachine extends StateMachine<any, infer TMeta, any> ? TMeta extends {
    meta: {
        actions: infer TOut;
    };
} ? TOut extends (...args: any) => any ? ReturnType<TOut> : never : never : never;

// @public (undocumented)
export type AnyActions = (send: any, selectors: any) => any;

// @public (undocumented)
export type AnyRoute = {
    matches: (url: string, search: string) => any;
    reverse: any;
    navigate: any;
    getEvent: any;
    event: string;
    preload: any;
    basePath: string;
    history: () => XstateTreeHistory;
    parent?: AnyRoute;
    paramsSchema?: Z.ZodObject<any>;
    querySchema?: Z.ZodObject<any>;
    matcher: (url: string, query: ParsedQuery<string> | undefined) => any;
    reverser: any;
    redirect?: any;
};

// @public (undocumented)
export type AnySelector = V1Selectors<any, any, any, any>;

// @public (undocumented)
export type AnyXstateTreeMachine = StateMachine<any, XstateTreeMachineStateSchemaV1<AnyStateMachine, AnySelector, AnyActions> | XstateTreeMachineStateSchemaV2<AnyStateMachine, any, any>, any>;

// @public (undocumented)
export type ArgumentsForRoute<T> = T extends Route<infer TParams, infer TQuery, any, infer TMeta> ? RouteArguments<TParams, TQuery, TMeta> : never;

// @public
export function broadcast(event: GlobalEvents): void;

// @public @deprecated
export function buildActions<TMachine extends AnyStateMachine, TActions, TSelectors, TSend = InterpreterFrom<TMachine>["send"]>(__machine: TMachine, __selectors: TSelectors, actions: (send: TSend, selectors: OutputFromSelector<TSelectors>) => TActions): (send: TSend, selectors: OutputFromSelector<TSelectors>) => TActions;

// @public
export function buildCreateRoute(history: () => XstateTreeHistory, basePath: string): {
    simpleRoute<TBaseRoute extends AnyRoute>(baseRoute?: TBaseRoute | undefined): <TEvent extends string, TParamsSchema extends Z.ZodObject<any, "strip", Z.ZodTypeAny, {
        [x: string]: any;
    }, {
        [x: string]: any;
    }> | undefined, TQuerySchema extends Z.ZodObject<any, "strip", Z.ZodTypeAny, {
        [x: string]: any;
    }, {
        [x: string]: any;
    }> | undefined, TMeta extends Record<string, unknown>>({ url, paramsSchema, querySchema, ...args }: {
        event: TEvent;
        url: string;
        paramsSchema?: TParamsSchema | undefined;
        querySchema?: TQuerySchema | undefined;
        meta?: TMeta | undefined;
        redirect?: RouteRedirect<MergeRouteTypes<RouteParams<TBaseRoute>, ResolveZodType<TParamsSchema>>, ResolveZodType<TQuerySchema>, MergeRouteTypes<RouteMeta<TBaseRoute>, TMeta> & SharedMeta> | undefined;
        preload?: RouteArgumentFunctions<void, MergeRouteTypes<RouteParams<TBaseRoute>, ResolveZodType<TParamsSchema>>, ResolveZodType<TQuerySchema>, MergeRouteTypes<RouteMeta<TBaseRoute>, TMeta>, RouteArguments<MergeRouteTypes<RouteParams<TBaseRoute>, ResolveZodType<TParamsSchema>>, ResolveZodType<TQuerySchema>, MergeRouteTypes<RouteMeta<TBaseRoute>, TMeta>>> | undefined;
    }) => Route<MergeRouteTypes<RouteParams<TBaseRoute>, ResolveZodType<TParamsSchema>>, ResolveZodType<TQuerySchema>, TEvent, MergeRouteTypes<RouteMeta<TBaseRoute>, TMeta> & SharedMeta>;
    route<TBaseRoute_1 extends AnyRoute>(baseRoute?: TBaseRoute_1 | undefined): <TEvent_1 extends string, TParamsSchema_1 extends Z.ZodObject<any, "strip", Z.ZodTypeAny, {
        [x: string]: any;
    }, {
        [x: string]: any;
    }> | undefined, TQuerySchema_1 extends Z.ZodObject<any, "strip", Z.ZodTypeAny, {
        [x: string]: any;
    }, {
        [x: string]: any;
    }> | undefined, TMeta_1 extends Record<string, unknown>>({ event, matcher, reverser, paramsSchema, querySchema, redirect, preload, }: {
        event: TEvent_1;
        paramsSchema?: TParamsSchema_1 | undefined;
        querySchema?: TQuerySchema_1 | undefined;
        meta?: TMeta_1 | undefined;
        redirect?: RouteRedirect<MergeRouteTypes<RouteParams<TBaseRoute_1>, ResolveZodType<TParamsSchema_1>>, ResolveZodType<TQuerySchema_1>, MergeRouteTypes<RouteMeta<TBaseRoute_1>, TMeta_1> & SharedMeta> | undefined;
        matcher: (url: string, query: ParsedQuery<string> | undefined) => false | (RouteArguments<MergeRouteTypes<RouteParams<TBaseRoute_1>, ResolveZodType<TParamsSchema_1>>, ResolveZodType<TQuerySchema_1>, MergeRouteTypes<RouteMeta<TBaseRoute_1>, TMeta_1>> & {
            matchLength: number;
        });
        reverser: RouteArgumentFunctions<string, MergeRouteTypes<RouteParams<TBaseRoute_1>, ResolveZodType<TParamsSchema_1>>, ResolveZodType<TQuerySchema_1>, MergeRouteTypes<RouteMeta<TBaseRoute_1>, TMeta_1>, RouteArguments<MergeRouteTypes<RouteParams<TBaseRoute_1>, ResolveZodType<TParamsSchema_1>>, ResolveZodType<TQuerySchema_1>, MergeRouteTypes<RouteMeta<TBaseRoute_1>, TMeta_1>>>;
        preload?: RouteArgumentFunctions<void, MergeRouteTypes<RouteParams<TBaseRoute_1>, ResolveZodType<TParamsSchema_1>>, ResolveZodType<TQuerySchema_1>, MergeRouteTypes<RouteMeta<TBaseRoute_1>, TMeta_1>, RouteArguments<MergeRouteTypes<RouteParams<TBaseRoute_1>, ResolveZodType<TParamsSchema_1>>, ResolveZodType<TQuerySchema_1>, MergeRouteTypes<RouteMeta<TBaseRoute_1>, TMeta_1>>> | undefined;
    }) => Route<MergeRouteTypes<RouteParams<TBaseRoute_1>, ResolveZodType<TParamsSchema_1>>, ResolveZodType<TQuerySchema_1>, TEvent_1, MergeRouteTypes<RouteMeta<TBaseRoute_1>, TMeta_1> & SharedMeta>;
};

// @public
export function buildRootComponent(machine: AnyXstateTreeMachine, routing?: {
    routes: AnyRoute[];
    history: XstateTreeHistory<any>;
    basePath: string;
    getPathName?: () => string;
    getQueryString?: () => string;
}): {
    (): JSX.Element | null;
    rootMachine: AnyXstateTreeMachine;
};

// @public
export function buildRoutingMachine<TRoutes extends AnyRoute[]>(_routes: TRoutes, mappings: Record<TRoutes[number]["event"], AnyXstateTreeMachine>): AnyXstateTreeMachine;

// Warning: (ae-incompatible-release-tags) The symbol "buildSelectors" is marked as @public, but its signature references "CanHandleEvent" which is marked as @internal
// Warning: (ae-incompatible-release-tags) The symbol "buildSelectors" is marked as @public, but its signature references "MatchesFrom" which is marked as @internal
//
// @public @deprecated
export function buildSelectors<TMachine extends AnyStateMachine, TSelectors, TContext = ContextFrom<TMachine>>(__machine: TMachine, selectors: (ctx: TContext, canHandleEvent: CanHandleEvent<TMachine>, inState: MatchesFrom<TMachine>, __currentState: never) => TSelectors): V1Selectors<TContext, EventFrom<TMachine>, TSelectors, MatchesFrom<TMachine>>;

// @public
export function buildTestRootComponent<TMachine extends AnyStateMachine, TSelectors extends AnySelector, TActions extends AnyActions, TContext = ContextFrom<TMachine>>(machine: StateMachine<TContext, XstateTreeMachineStateSchemaV1<TMachine, TSelectors, TActions> | XstateTreeMachineStateSchemaV2<TMachine, TSelectors, TActions>, EventFrom<TMachine>>, logger: typeof console.log): {
    rootComponent: () => JSX.Element | null;
    addTransitionListener: (listener: () => void) => void;
    awaitTransition(): Promise<void>;
};

// Warning: (ae-incompatible-release-tags) The symbol "buildView" is marked as @public, but its signature references "MatchesFrom" which is marked as @internal
//
// @public @deprecated
export function buildView<TMachine extends AnyStateMachine, TEvent extends EventObject, TActions, TSelectors extends AnySelector, TSlots extends readonly Slot[] = [], TMatches extends AnyFunction = MatchesFrom<TMachine>, TViewProps = ViewProps<OutputFromSelector<TSelectors>, TActions, TSlots, TMatches>, TSend = (send: TEvent) => void>(__machine: TMachine, __selectors: TSelectors, __actions: (send: TSend, selectors: OutputFromSelector<TSelectors>) => TActions, __slots: TSlots, view: React_2.ComponentType<TViewProps>): React_2.ComponentType<TViewProps>;

// Warning: (ae-forgotten-export) The symbol "InferViewProps" needs to be exported by the entry point index.d.ts
// Warning: (ae-forgotten-export) The symbol "PropsOf" needs to be exported by the entry point index.d.ts
//
// @public
export function buildViewProps<C extends keyof JSX.IntrinsicElements | JSXElementConstructor<any>>(_view: C, props: Pick<InferViewProps<PropsOf<C>>, "actions" | "selectors">): InferViewProps<PropsOf<C>>;

// @public @deprecated
export function buildXStateTreeMachine<TMachine extends AnyStateMachine, TSelectors extends AnySelector, TActions extends AnyActions>(machine: TMachine, meta: XStateTreeMachineMetaV1<TMachine, TSelectors, TActions>): StateMachine<ContextFrom<TMachine>, XstateTreeMachineStateSchemaV1<TMachine, TSelectors, TActions>, EventFrom<TMachine>, any, any, any, any>;

// Warning: (ae-internal-missing-underscore) The name "CanHandleEvent" should be prefixed with an underscore because the declaration is marked as @internal
//
// @internal (undocumented)
export type CanHandleEvent<TMachine extends AnyStateMachine> = (e: EventFrom<TMachine>) => boolean;

// @public
export function createXStateTreeMachine<TMachine extends AnyStateMachine, TSelectorsOutput = ContextFrom<TMachine>, TActionsOutput = Record<never, string>, TSlots extends readonly Slot[] = []>(machine: TMachine, options: V2BuilderMeta<TMachine, TSelectorsOutput, TActionsOutput, TSlots>): StateMachine<ContextFrom<TMachine>, XstateTreeMachineStateSchemaV2<TMachine, TSelectorsOutput, TActionsOutput, TSlots>, EventFrom<TMachine>, any, any, any, any>;

// @public
export const genericSlotsTestingDummy: any;

// @public (undocumented)
export type GetSlotNames<TSlots extends readonly Slot[]> = TSlots[number]["name"];

// @public
export type GlobalEvents = {
    [I in keyof XstateTreeEvents]: XstateTreeEvents[I] extends string ? {
        type: I;
    } : XstateTreeEvents[I] & {
        type: I;
    };
}[keyof XstateTreeEvents];

// Warning: (ae-forgotten-export) The symbol "Options" needs to be exported by the entry point index.d.ts
// Warning: (ae-forgotten-export) The symbol "Context" needs to be exported by the entry point index.d.ts
// Warning: (ae-forgotten-export) The symbol "Events" needs to be exported by the entry point index.d.ts
// Warning: (ae-forgotten-export) The symbol "States" needs to be exported by the entry point index.d.ts
//
// @public
export function lazy<TMachine extends AnyStateMachine>(factory: () => Promise<TMachine>, { Loader, withContext, }?: Options<TMachine["context"]>): StateMachine<Context, any, Events, States, any, any, any>;

// Warning: (ae-forgotten-export) The symbol "LinkInner" needs to be exported by the entry point index.d.ts
//
// @public
export const Link: <TRoute extends AnyRoute>(props: {
    to: TRoute;
    children: React_2.ReactNode;
    testId?: string | undefined;
    onClick?: ((e: React_2.MouseEvent<HTMLAnchorElement>) => boolean | void) | undefined;
    preloadOnInteraction?: boolean | undefined;
    preloadOnHoverMs?: number | undefined;
} & RouteArguments<TRoute extends Route<infer TParams, any, any, any> ? TParams : undefined, TRoute extends Route<any, infer TQuery, any, any> ? TQuery : undefined, TRoute extends Route<any, any, any, infer TMeta> ? TMeta : undefined> & Omit<React_2.AnchorHTMLAttributes<HTMLAnchorElement>, "href" | "onClick"> & {
    ref?: React_2.ForwardedRef<HTMLAnchorElement> | undefined;
}) => ReturnType<typeof LinkInner>;

// @public (undocumented)
export type LinkProps<TRoute extends AnyRoute, TRouteParams = TRoute extends Route<infer TParams, any, any, any> ? TParams : undefined, TRouteQuery = TRoute extends Route<any, infer TQuery, any, any> ? TQuery : undefined, TRouteMeta = TRoute extends Route<any, any, any, infer TMeta> ? TMeta : undefined> = {
    to: TRoute;
    children: React_2.ReactNode;
    testId?: string;
    onClick?: (e: React_2.MouseEvent<HTMLAnchorElement>) => boolean | void;
    preloadOnInteraction?: boolean;
    preloadOnHoverMs?: number;
} & RouteArguments<TRouteParams, TRouteQuery, TRouteMeta> & Omit<React_2.AnchorHTMLAttributes<HTMLAnchorElement>, "href" | "onClick">;

// @public (undocumented)
export function loggingMetaOptions<TEvents extends EventObject, TContext>(ignoredEvents: TEvents["type"][], ignoreContext?: (keyof TContext)[] | undefined): {
    xstateTree: {
        ignoredEvents: Map<string, boolean>;
        ignoreContext: (keyof TContext)[] | undefined;
    };
};

// Warning: (ae-internal-missing-underscore) The name "MatchesFrom" should be prefixed with an underscore because the declaration is marked as @internal
//
// @internal (undocumented)
export type MatchesFrom<T extends AnyStateMachine> = StateFrom<T>["matches"];

// Warning: (ae-forgotten-export) The symbol "Return" needs to be exported by the entry point index.d.ts
//
// @public (undocumented)
export function matchRoute<TRoutes extends Route<any, any, any, any>[]>(routes: TRoutes, basePath: string, path: string, search: string): Return<TRoutes>;

// @public
export type Meta<T> = T extends {
    meta: infer TMeta;
} ? TMeta : undefined;

// @public (undocumented)
export type MultiSlot<T extends string> = {
    type: SlotType.MultiSlot;
    name: `${T}Multi`;
    getId(id: string): string;
};

// @public (undocumented)
export function multiSlot<T extends string>(name: T): MultiSlot<T>;

// @public
export function onBroadcast(handler: (event: GlobalEvents) => void): () => void;

// @public (undocumented)
export type OutputFromSelector<T> = T extends V1Selectors<any, any, infer O, any> ? O : never;

// @public
export type Params<T> = T extends {
    params: infer TParams;
} ? TParams : undefined;

// @public
export type PickEvent<T extends Extract<GlobalEvents, {
    type: string;
}>["type"]> = Extract<GlobalEvents, {
    type: T;
}>;

// @public
export type Query<T> = T extends {
    query: infer TQuery;
} ? TQuery : undefined;

// @public
export type Route<TParams, TQuery, TEvent, TMeta> = {
    matches: (url: string, search: string) => ({
        type: TEvent;
        originalUrl: string;
    } & RouteArguments<TParams, TQuery, TMeta>) | false;
    reverse: RouteArgumentFunctions<string, TParams, TQuery, undefined>;
    navigate: RouteArgumentFunctions<void, TParams, TQuery, TMeta>;
    preload: RouteArgumentFunctions<void, TParams, TQuery, TMeta>;
    getEvent: RouteArgumentFunctions<{
        type: TEvent;
    } & RouteArguments<TParams, TQuery, TMeta>, TParams, TQuery, TMeta>;
    matcher: (url: string, query: ParsedQuery<string> | undefined) => (RouteArguments<TParams, TQuery, TMeta> & {
        matchLength: number;
    }) | false;
    reverser: RouteArgumentFunctions<string, TParams, TQuery, TMeta>;
    event: TEvent;
    history: () => XstateTreeHistory;
    basePath: string;
    parent?: AnyRoute;
    paramsSchema?: Z.ZodObject<any>;
    querySchema?: Z.ZodObject<any>;
    redirect?: RouteRedirect<TParams, TQuery, TMeta>;
};

// Warning: (ae-forgotten-export) The symbol "IsEmptyObject" needs to be exported by the entry point index.d.ts
// Warning: (ae-forgotten-export) The symbol "EmptyRouteArguments" needs to be exported by the entry point index.d.ts
// Warning: (ae-forgotten-export) The symbol "MakeEmptyObjectPropertiesOptional" needs to be exported by the entry point index.d.ts
//
// @public (undocumented)
export type RouteArgumentFunctions<TReturn, TParams, TQuery, TMeta, TArgs = RouteArguments<TParams, TQuery, TMeta>> = IsEmptyObject<TArgs> extends true ? () => TReturn : keyof TArgs extends "meta" ? (args?: TArgs) => TReturn : EmptyRouteArguments<TParams, TQuery> extends true ? (args?: Partial<TArgs>) => TReturn : (args: MakeEmptyObjectPropertiesOptional<TArgs>) => TReturn;

// @public (undocumented)
export type RouteArguments<TParams, TQuery, TMeta> = TParams extends undefined ? TQuery extends undefined ? TMeta extends undefined ? {} : {
    meta?: TMeta;
} : TMeta extends undefined ? {
    query: TQuery;
} : {
    query: TQuery;
    meta?: TMeta;
} : TQuery extends undefined ? TMeta extends undefined ? {
    params: TParams;
} : {
    params: TParams;
    meta?: TMeta;
} : TMeta extends undefined ? {
    params: TParams;
    query: TQuery;
} : {
    params: TParams;
    query: TQuery;
    meta?: TMeta;
};

// @public
export type RouteMeta<T> = T extends Route<any, any, any, infer TMeta> ? TMeta : undefined;

// @public
export type RouteParams<T> = T extends Route<infer TParams, any, any, any> ? TParams : undefined;

// @public
export type RouteQuery<T> = T extends Route<any, infer TQuery, any, any> ? TQuery : undefined;

// @public (undocumented)
export type Routing404Event = {
    type: "ROUTING_404";
    url: string;
};

// @public
export type RoutingEvent<T> = T extends Route<infer TParams, infer TQuery, infer TEvent, infer TMeta> ? {
    type: TEvent;
    originalUrl: string;
    params: TParams;
    query: TQuery;
    meta: TMeta;
} : never;

// @public (undocumented)
export type Selectors<TMachine extends AnyStateMachine, TOut> = (args: {
    ctx: ContextFrom<TMachine>;
    canHandleEvent: CanHandleEvent<TMachine>;
    inState: MatchesFrom<TMachine>;
    meta?: unknown;
}) => TOut;

// @public
export type SelectorsFrom<TMachine extends AnyXstateTreeMachine> = TMachine extends StateMachine<any, infer TMeta, any> ? TMeta extends {
    meta: {
        selectors: infer TOut;
    };
} ? TOut extends (...args: any) => any ? ReturnType<TOut> : never : never : never;

// @public (undocumented)
export type SharedMeta = {
    doNotNotifyReactRouter?: boolean;
    indexEvent?: boolean;
    replace?: boolean;
    onloadEvent?: boolean;
};

// @public (undocumented)
export type SingleSlot<T extends string> = {
    type: SlotType.SingleSlot;
    name: T;
    getId(): string;
};

// @public (undocumented)
export function singleSlot<T extends string>(name: T): SingleSlot<T>;

// @public (undocumented)
export type Slot = SingleSlot<any> | MultiSlot<any>;

// @public
export function slotTestingDummyFactory(name: string): StateMachine<unknown, XstateTreeMachineStateSchemaV1<StateMachine<unknown, any, AnyEventObject, {
    value: any;
    context: unknown;
}, BaseActionObject, ServiceMap, ResolveTypegenMeta<TypegenDisabled, AnyEventObject, BaseActionObject, ServiceMap>>, () => {}, () => {}>, AnyEventObject, any, any, any, any>;

// @public (undocumented)
export enum SlotType {
    // (undocumented)
    MultiSlot = 1,
    // (undocumented)
    SingleSlot = 0
}

// @public (undocumented)
export type StyledLink<TStyleProps = {}> = <TRoute extends AnyRoute>(props: LinkProps<TRoute> & TStyleProps) => JSX.Element;

// @public
export function TestRoutingContext({ activeRouteEvents, children, }: {
    activeRouteEvents: RoutingEvent<any>[];
    children: React_2.ReactNode;
}): JSX.Element;

// @public
export function useActiveRouteEvents(): {
    type: unknown;
    originalUrl: string;
    params: unknown;
    query: unknown;
    meta: unknown;
}[] | undefined;

// @public
export function useIsRouteActive(...routes: AnyRoute[]): boolean;

// @public
export function useOnRoute(route: AnyRoute): boolean;

// @public
export function useRouteArgsIfActive<TRoute extends AnyRoute>(route: TRoute): ArgumentsForRoute<TRoute> | undefined;

// @public (undocumented)
export type V1Selectors<TContext, TEvent, TSelectors, TMatches> = (ctx: TContext, canHandleEvent: (e: TEvent) => boolean, inState: TMatches, __currentState: never) => TSelectors;

// @public (undocumented)
export type V2BuilderMeta<TMachine extends AnyStateMachine, TSelectorsOutput = ContextFrom<TMachine>, TActionsOutput = Record<never, string>, TSlots extends readonly Slot[] = Slot[]> = {
    selectors?: Selectors<TMachine, TSelectorsOutput>;
    actions?: Actions<TMachine, TSelectorsOutput, TActionsOutput>;
    slots?: TSlots;
    View: View<TActionsOutput, TSelectorsOutput, TSlots>;
};

// @public (undocumented)
export type View<TActionsOutput, TSelectorsOutput, TSlots extends readonly Slot[]> = React_2.ComponentType<{
    slots: Record<GetSlotNames<TSlots>, React_2.ComponentType>;
    actions: TActionsOutput;
    selectors: TSelectorsOutput;
}>;

// @public (undocumented)
export type ViewProps<TSelectors, TActions, TSlots extends readonly Slot[], TMatches extends AnyFunction> = {
    slots: Record<GetSlotNames<TSlots>, React_2.ComponentType>;
    actions: TActions;
    selectors: TSelectors;
    inState: TMatches;
};

// @public
export function viewToMachine(view: (args?: any) => JSX.Element | null): AnyXstateTreeMachine;

// @public (undocumented)
export type XstateTreeHistory<T = unknown> = History_2<{
    meta?: T;
    previousUrl?: string;
}>;

// @public (undocumented)
export type XStateTreeMachineMetaV1<TMachine extends AnyStateMachine, TSelectors, TActions extends AnyActions, TSlots extends readonly Slot[] = Slot[]> = {
    slots: TSlots;
    view: React_2.ComponentType<ViewProps<OutputFromSelector<TSelectors>, ReturnType<TActions>, TSlots, MatchesFrom<TMachine>>>;
    selectors: TSelectors;
    actions: TActions;
    xstateTreeMachine?: true;
};

// @public (undocumented)
export type XstateTreeMachineStateSchemaV1<TMachine extends AnyStateMachine, TSelectors extends AnySelector, TActions extends AnyActions> = {
    meta: XStateTreeMachineMetaV1<TMachine, TSelectors, TActions> & {
        builderVersion: 1;
    };
};

// @public (undocumented)
export type XstateTreeMachineStateSchemaV2<TMachine extends AnyStateMachine, TSelectorsOutput = ContextFrom<TMachine>, TActionsOutput = Record<never, string>, TSlots extends readonly Slot[] = Slot[]> = {
    meta: Required<V2BuilderMeta<TMachine, TSelectorsOutput, TActionsOutput, TSlots> & {
        builderVersion: 2;
    }>;
};

// Warnings were encountered during analysis:
//
// src/routing/createRoute/createRoute.ts:288:19 - (ae-forgotten-export) The symbol "MergeRouteTypes" needs to be exported by the entry point index.d.ts
// src/routing/createRoute/createRoute.ts:288:19 - (ae-forgotten-export) The symbol "ResolveZodType" needs to be exported by the entry point index.d.ts
// src/routing/createRoute/createRoute.ts:325:9 - (ae-forgotten-export) The symbol "RouteRedirect" needs to be exported by the entry point index.d.ts
// src/types.ts:25:3 - (ae-incompatible-release-tags) The symbol "view" is marked as @public, but its signature references "MatchesFrom" which is marked as @internal
// src/types.ts:172:3 - (ae-incompatible-release-tags) The symbol "canHandleEvent" is marked as @public, but its signature references "CanHandleEvent" which is marked as @internal
// src/types.ts:173:3 - (ae-incompatible-release-tags) The symbol "inState" is marked as @public, but its signature references "MatchesFrom" which is marked as @internal

// (No @packageDocumentation comment for this package)