UNPKG

@assistant-ui/react

Version:

React components for AI chat.

324 lines 10.8 kB
import { ReadonlyStore } from "../ReadonlyStore"; import { AttachmentRuntime, AttachmentState } from "../../api/AttachmentRuntime"; import { UseBoundStore } from "zustand"; export type AttachmentContextValue = { source: "thread-composer" | "edit-composer" | "message"; useAttachment: UseBoundStore<ReadonlyStore<AttachmentState>>; useAttachmentRuntime: UseBoundStore<ReadonlyStore<AttachmentRuntime>>; }; export declare const AttachmentContext: import("react").Context<AttachmentContextValue | null>; export declare function useAttachmentContext(options?: { optional?: false | undefined; }): AttachmentContextValue; export declare function useAttachmentContext(options?: { optional?: boolean | undefined; }): AttachmentContextValue | null; export declare function useAttachmentRuntime(options?: { optional?: false | undefined; }): AttachmentRuntime; export declare function useAttachmentRuntime(options?: { optional?: boolean | undefined; }): AttachmentRuntime | null; export declare function useThreadComposerAttachmentRuntime(options?: { optional?: false | undefined; }): AttachmentRuntime; export declare function useThreadComposerAttachmentRuntime(options?: { optional?: boolean | undefined; }): AttachmentRuntime | null; export declare function useEditComposerAttachmentRuntime(options?: { optional?: false | undefined; }): AttachmentRuntime; export declare function useEditComposerAttachmentRuntime(options?: { optional?: boolean | undefined; }): AttachmentRuntime | null; export declare function useMessageAttachmentRuntime(options?: { optional?: false | undefined; }): AttachmentRuntime; export declare function useMessageAttachmentRuntime(options?: { optional?: boolean | undefined; }): AttachmentRuntime | null; export declare const useAttachment: { (): AttachmentState; <TSelected>(selector: (state: AttachmentState) => TSelected): TSelected; (options: { optional: true; }): AttachmentState | null; <TSelected>(options: { optional: true; selector?: (state: AttachmentState) => TSelected; }): TSelected | null; }; export declare const useThreadComposerAttachment: { (): { id: string; type: "image" | "document" | "file"; name: string; contentType?: string; file?: File; content?: import("../..").CoreUserContentPart[]; } & { status: import("../../types/AttachmentTypes").PendingAttachmentStatus; file: File; } & { source: "thread-composer"; attachment: import("../..").PendingAttachment; } & { source: "thread-composer"; }; <TSelected>(selector: (state: { id: string; type: "image" | "document" | "file"; name: string; contentType?: string; file?: File; content?: import("../..").CoreUserContentPart[]; } & { status: import("../../types/AttachmentTypes").PendingAttachmentStatus; file: File; } & { source: "thread-composer"; attachment: import("../..").PendingAttachment; } & { source: "thread-composer"; }) => TSelected): TSelected; (options: { optional: true; }): ({ id: string; type: "image" | "document" | "file"; name: string; contentType?: string; file?: File; content?: import("../..").CoreUserContentPart[]; } & { status: import("../../types/AttachmentTypes").PendingAttachmentStatus; file: File; } & { source: "thread-composer"; attachment: import("../..").PendingAttachment; } & { source: "thread-composer"; }) | null; <TSelected>(options: { optional: true; selector?: (state: { id: string; type: "image" | "document" | "file"; name: string; contentType?: string; file?: File; content?: import("../..").CoreUserContentPart[]; } & { status: import("../../types/AttachmentTypes").PendingAttachmentStatus; file: File; } & { source: "thread-composer"; attachment: import("../..").PendingAttachment; } & { source: "thread-composer"; }) => TSelected; }): TSelected | null; }; export declare const useEditComposerAttachment: { (): ({ id: string; type: "image" | "document" | "file"; name: string; contentType?: string; file?: File; content?: import("../..").CoreUserContentPart[]; } & { status: import("../../types/AttachmentTypes").PendingAttachmentStatus; file: File; } & { source: "edit-composer"; attachment: import("../..").Attachment; } & { source: "edit-composer"; }) | ({ id: string; type: "image" | "document" | "file"; name: string; contentType?: string; file?: File; content?: import("../..").CoreUserContentPart[]; } & { status: import("../../types/AttachmentTypes").CompleteAttachmentStatus; content: import("../..").CoreUserContentPart[]; } & { source: "edit-composer"; attachment: import("../..").Attachment; } & { source: "edit-composer"; }); <TSelected>(selector: (state: ({ id: string; type: "image" | "document" | "file"; name: string; contentType?: string; file?: File; content?: import("../..").CoreUserContentPart[]; } & { status: import("../../types/AttachmentTypes").PendingAttachmentStatus; file: File; } & { source: "edit-composer"; attachment: import("../..").Attachment; } & { source: "edit-composer"; }) | ({ id: string; type: "image" | "document" | "file"; name: string; contentType?: string; file?: File; content?: import("../..").CoreUserContentPart[]; } & { status: import("../../types/AttachmentTypes").CompleteAttachmentStatus; content: import("../..").CoreUserContentPart[]; } & { source: "edit-composer"; attachment: import("../..").Attachment; } & { source: "edit-composer"; })) => TSelected): TSelected; (options: { optional: true; }): ({ id: string; type: "image" | "document" | "file"; name: string; contentType?: string; file?: File; content?: import("../..").CoreUserContentPart[]; } & { status: import("../../types/AttachmentTypes").PendingAttachmentStatus; file: File; } & { source: "edit-composer"; attachment: import("../..").Attachment; } & { source: "edit-composer"; }) | ({ id: string; type: "image" | "document" | "file"; name: string; contentType?: string; file?: File; content?: import("../..").CoreUserContentPart[]; } & { status: import("../../types/AttachmentTypes").CompleteAttachmentStatus; content: import("../..").CoreUserContentPart[]; } & { source: "edit-composer"; attachment: import("../..").Attachment; } & { source: "edit-composer"; }) | null; <TSelected>(options: { optional: true; selector?: (state: ({ id: string; type: "image" | "document" | "file"; name: string; contentType?: string; file?: File; content?: import("../..").CoreUserContentPart[]; } & { status: import("../../types/AttachmentTypes").PendingAttachmentStatus; file: File; } & { source: "edit-composer"; attachment: import("../..").Attachment; } & { source: "edit-composer"; }) | ({ id: string; type: "image" | "document" | "file"; name: string; contentType?: string; file?: File; content?: import("../..").CoreUserContentPart[]; } & { status: import("../../types/AttachmentTypes").CompleteAttachmentStatus; content: import("../..").CoreUserContentPart[]; } & { source: "edit-composer"; attachment: import("../..").Attachment; } & { source: "edit-composer"; })) => TSelected; }): TSelected | null; }; export declare const useMessageAttachment: { (): { id: string; type: "image" | "document" | "file"; name: string; contentType?: string; file?: File; content?: import("../..").CoreUserContentPart[]; } & { status: import("../../types/AttachmentTypes").CompleteAttachmentStatus; content: import("../..").CoreUserContentPart[]; } & { source: "message"; attachment: import("../..").CompleteAttachment; } & { source: "message"; }; <TSelected>(selector: (state: { id: string; type: "image" | "document" | "file"; name: string; contentType?: string; file?: File; content?: import("../..").CoreUserContentPart[]; } & { status: import("../../types/AttachmentTypes").CompleteAttachmentStatus; content: import("../..").CoreUserContentPart[]; } & { source: "message"; attachment: import("../..").CompleteAttachment; } & { source: "message"; }) => TSelected): TSelected; (options: { optional: true; }): ({ id: string; type: "image" | "document" | "file"; name: string; contentType?: string; file?: File; content?: import("../..").CoreUserContentPart[]; } & { status: import("../../types/AttachmentTypes").CompleteAttachmentStatus; content: import("../..").CoreUserContentPart[]; } & { source: "message"; attachment: import("../..").CompleteAttachment; } & { source: "message"; }) | null; <TSelected>(options: { optional: true; selector?: (state: { id: string; type: "image" | "document" | "file"; name: string; contentType?: string; file?: File; content?: import("../..").CoreUserContentPart[]; } & { status: import("../../types/AttachmentTypes").CompleteAttachmentStatus; content: import("../..").CoreUserContentPart[]; } & { source: "message"; attachment: import("../..").CompleteAttachment; } & { source: "message"; }) => TSelected; }): TSelected | null; }; //# sourceMappingURL=AttachmentContext.d.ts.map