e30e75b5d4
Changesets / Create Version PR (push) Has been cancelled
Deploy Shadcn Registry / Deploy Production (push) Has been cancelled
Template Metrics / LOC + Bundle Size (push) Has been cancelled
Code Quality / Oxlint + Oxfmt (push) Has been cancelled
Code Quality / Template Sync (push) Has been cancelled
Code Quality / Build Changed Packages (push) Has been cancelled
Code Quality / Test Changed Packages (push) Has been cancelled
Deploy Expo Example / Deploy Production (push) Has been cancelled
Deploy Ink Example / Deploy Production (push) Has been cancelled
Python Tests / pytest (assistant-stream, 3.10) (push) Has been cancelled
Python Tests / pytest (assistant-stream, 3.12) (push) Has been cancelled
Python Tests / pytest (assistant-ui-sync-server-api, 3.10) (push) Has been cancelled
Python Tests / pytest (assistant-ui-sync-server-api, 3.12) (push) Has been cancelled
41 lines
862 B
TypeScript
41 lines
862 B
TypeScript
import "@assistant-ui/store";
|
|
|
|
type FooState = { id: string; bar: string };
|
|
type FooMethods = {
|
|
getState: () => FooState;
|
|
updateBar: (newBar: string) => void;
|
|
remove: () => void;
|
|
};
|
|
type FooMeta = {
|
|
source: "fooList";
|
|
query: { index: number } | { key: string };
|
|
};
|
|
type FooEvents = {
|
|
"foo.updated": { id: string; newValue: string };
|
|
"foo.removed": { id: string };
|
|
};
|
|
|
|
type FooListState = { foos: FooState[] };
|
|
type FooListMethods = {
|
|
getState: () => FooListState;
|
|
foo: (lookup: FooMeta["query"]) => FooMethods;
|
|
addFoo: () => void;
|
|
};
|
|
type FooListEvents = {
|
|
"fooList.added": { id: string };
|
|
};
|
|
|
|
declare module "@assistant-ui/store" {
|
|
interface ScopeRegistry {
|
|
foo: {
|
|
methods: FooMethods;
|
|
meta: FooMeta;
|
|
events: FooEvents;
|
|
};
|
|
fooList: {
|
|
methods: FooListMethods;
|
|
events: FooListEvents;
|
|
};
|
|
}
|
|
}
|