@upstart.gg/sdk
Version:
You can test the CLI without recompiling by running:
199 lines (198 loc) • 4.26 kB
TypeScript
import { AskUserChoiceInput, ToolInputInstructionsType, ToolInputWaitingMessageType } from "./schemas.js";
import { Theme } from "../theme.js";
import { Sitemap } from "../sitemap.js";
import { Page, VersionedPage } from "../page.js";
import { PageAttributes, SiteAttributes } from "../attributes.js";
import { Brick, Section, SectionSchemaNoBricks } from "../bricks.js";
import { Datarecord } from "../datarecords/types.js";
import { InternalDatasource } from "../datasources/types.js";
import { ImageSearchResultsType } from "../images.js";
import { UIMessage } from "ai";
//#region src/shared/ai/types.d.ts
type Tools = {
setSitePrompt: {
input: {
prompt: string;
};
output: string;
};
getBrickDocs: {
input: {
type: string;
};
output: string;
};
askUserChoice: {
input: AskUserChoiceInput;
output: string | string[] | null;
};
editSiteAttributes: {
input: ToolInputWaitingMessageType & ToolInputInstructionsType;
output: SiteAttributes;
};
generateImages: {
input: ToolInputWaitingMessageType & {
prompt: string;
count: number;
aspectRatio: string;
};
output: ImageSearchResultsType;
};
listThemes: {
input: unknown;
output: Theme[];
};
createSection: {
input: ToolInputWaitingMessageType & ToolInputInstructionsType & Pick<Section, "id" | "label" | "order">;
output: Section;
};
editSection: {
input: {
id: string;
data: Partial<SectionSchemaNoBricks>;
};
output: Section;
};
deleteSection: {
input: {
id: string;
};
output: {
sections: Section[];
deleted: Section;
};
};
getSection: {
input: {
id: string;
};
output: Section;
};
createThemes: {
input: ToolInputWaitingMessageType & ToolInputInstructionsType & {
count: number;
};
output: Theme[];
};
getCurrentTheme: {
input: unknown;
output: Theme;
};
createPage: {
input: Pick<Page, "label"> & Pick<PageAttributes, "path"> & ToolInputWaitingMessageType & ToolInputInstructionsType;
output: VersionedPage;
};
editPage: {
input: ToolInputWaitingMessageType & ToolInputInstructionsType & Pick<Page, "id">;
output: VersionedPage;
};
undo: {
input: {
steps?: number;
};
output: boolean;
};
setSiteLabel: {
input: {
label: string;
};
output: string;
};
getCurrentPage: {
input: unknown;
output: VersionedPage;
};
analyzeUrl: {
input: {
url: string;
prompt: string;
};
output: string;
};
createBrick: {
input: {
instructions: string;
otherBrickTypes: string[];
sectionId: string;
id: string;
type: string;
insertAt: {
type: "section";
index: number;
} | {
type: "brick";
id: string;
index: number;
};
};
output: Brick;
};
editBrick: {
input: {
id: string;
instructions: string;
otherBrickTypes: string[];
};
output: Brick;
};
listImages: {
input: unknown;
output: ImageSearchResultsType;
};
setTheme: {
input: {
id: string;
};
output: Theme;
};
createDatasource: {
input: ToolInputWaitingMessageType & ToolInputInstructionsType & {
id: string;
};
output: InternalDatasource;
};
listDatasources: {
input: unknown;
output: InternalDatasource[];
};
createDatarecord: {
input: ToolInputWaitingMessageType & ToolInputInstructionsType & {
id: string;
};
output: Datarecord;
};
listDatarecords: {
input: unknown;
output: Datarecord[];
};
searchImages: {
input: ToolInputWaitingMessageType & {
query: string;
};
output: ImageSearchResultsType;
};
deleteBrick: {
input: {
id: string;
};
output: Brick;
};
};
type Metadata = {
init?: boolean;
creditsUsed?: number;
userLanguage?: string;
};
type Data = {
themes: Theme[];
sitemap: Sitemap;
page: VersionedPage;
brick: {
sectionId: string;
brick: Brick;
};
};
type UpstartUIMessage = UIMessage<Metadata, Data, Tools>;
//#endregion
export { Tools, UpstartUIMessage };
//# sourceMappingURL=types.d.ts.map