import * as z from "zod/v3"; import { ClosedEnum } from "../../types/enums.js"; import { ManualFeedbackInfo, ManualFeedbackInfo$Outbound } from "./manualfeedbackinfo.js"; import { ManualFeedbackSideBySideInfo, ManualFeedbackSideBySideInfo$Outbound } from "./manualfeedbacksidebysideinfo.js"; import { SeenFeedbackInfo, SeenFeedbackInfo$Outbound } from "./seenfeedbackinfo.js"; import { SessionInfo, SessionInfo$Outbound } from "./sessioninfo.js"; import { User, User$Outbound } from "./user.js"; import { UserViewInfo, UserViewInfo$Outbound } from "./userviewinfo.js"; import { WorkflowFeedbackInfo, WorkflowFeedbackInfo$Outbound } from "./workflowfeedbackinfo.js"; /** * The feature category to which the feedback applies. These should be broad product areas such as Announcements, Answers, Search, etc. rather than specific components or UI treatments within those areas. */ export declare const FeedbackCategory: { readonly Announcement: "ANNOUNCEMENT"; readonly Autocomplete: "AUTOCOMPLETE"; readonly Collections: "COLLECTIONS"; readonly Feed: "FEED"; readonly Search: "SEARCH"; readonly Chat: "CHAT"; readonly Ntp: "NTP"; readonly Workflows: "WORKFLOWS"; readonly Summary: "SUMMARY"; readonly General: "GENERAL"; readonly Prism: "PRISM"; readonly Prompts: "PROMPTS"; }; /** * The feature category to which the feedback applies. These should be broad product areas such as Announcements, Answers, Search, etc. rather than specific components or UI treatments within those areas. */ export type FeedbackCategory = ClosedEnum; /** * The action the user took within a Glean client with respect to the object referred to by the given `trackingToken`. */ export declare const Event: { /** * The object's primary link was clicked with the intent to view its full representation. Depending on the object type, this may imply an external navigation or navigating to a new page or view within the Glean app. */ readonly Click: "CLICK"; /** * A link to the object's parent container (e.g. the folder in which it's located) was clicked. */ readonly ContainerClick: "CONTAINER_CLICK"; /** * The user copied a link to the primary link. */ readonly CopyLink: "COPY_LINK"; /** * The user creates a document. */ readonly Create: "CREATE"; /** * The user dismissed the object such that it was hidden from view. */ readonly Dismiss: "DISMISS"; /** * The user gave feedback that the object was not useful. */ readonly Downvote: "DOWNVOTE"; /** * The user attempted to send an email. */ readonly Email: "EMAIL"; /** * The user executed the object (e.g. ran a workflow). */ readonly Execute: "EXECUTE"; /** * The user applied a filter. */ readonly Filter: "FILTER"; /** * The first token of a streaming response is received. */ readonly FirstToken: "FIRST_TOKEN"; /** * The user clicked into an interactive element, e.g. the search box. */ readonly FocusIn: "FOCUS_IN"; /** * The final token of a streaming response is received. */ readonly LastToken: "LAST_TOKEN"; /** * The user submitted textual manual feedback regarding the object. */ readonly ManualFeedback: "MANUAL_FEEDBACK"; /** * The user submitted comparative feedback for multiple side-by-side implementations. */ readonly ManualFeedbackSideBySide: "MANUAL_FEEDBACK_SIDE_BY_SIDE"; /** * The user submitted feedback about time saved by an agent or workflow. */ readonly FeedbackTimeSaved: "FEEDBACK_TIME_SAVED"; /** * The user explicitly marked the content as read. */ readonly MarkAsRead: "MARK_AS_READ"; /** * The user attempted to send a message using their default messaing app. */ readonly Message: "MESSAGE"; /** * The user middle clicked the object's primary link with the intent to open its full representation in a new tab. */ readonly MiddleClick: "MIDDLE_CLICK"; /** * The user puts a page out of focus but keeps it in the background. */ readonly PageBlur: "PAGE_BLUR"; /** * The user puts a page in focus, meaning it is the first to receive keyboard events. */ readonly PageFocus: "PAGE_FOCUS"; /** * The user leaves a page and it is unloaded (by clicking a link, closing the tab/window, etc). */ readonly PageLeave: "PAGE_LEAVE"; /** * The user clicked the object's inline preview affordance. */ readonly Preview: "PREVIEW"; readonly RelatedClick: "RELATED_CLICK"; /** * The user right clicked the object's primary link. This may indicate an intent to open it in a new tab or copy it. */ readonly RightClick: "RIGHT_CLICK"; /** * The user clicked a link to a subsection of the primary object. */ readonly SectionClick: "SECTION_CLICK"; /** * The user has likely seen the object (e.g. took action to make the object visible within the user's viewport). */ readonly Seen: "SEEN"; /** * The user explicitly selected something, eg. a chat response variant they prefer. */ readonly Select: "SELECT"; /** * The user shared the object with another user. */ readonly Share: "SHARE"; /** * The user clicked the object's show more affordance. */ readonly ShowMore: "SHOW_MORE"; /** * The user gave feedback that the object was useful. */ readonly Upvote: "UPVOTE"; /** * The object was visible within the user's viewport. */ readonly View: "VIEW"; /** * The object was visible within the user's viewport. */ readonly Visible: "VISIBLE"; }; /** * The action the user took within a Glean client with respect to the object referred to by the given `trackingToken`. */ export type Event = ClosedEnum; export declare const FeedbackChannel: { readonly Company: "COMPANY"; readonly Glean: "GLEAN"; }; export type FeedbackChannel = ClosedEnum; export type Feedback = { /** * Universally unique identifier of the event. To allow for reliable retransmission, only the earliest received event of a given UUID is considered valid by the server and subsequent are ignored. */ id?: string | undefined; /** * The feature category to which the feedback applies. These should be broad product areas such as Announcements, Answers, Search, etc. rather than specific components or UI treatments within those areas. */ category?: FeedbackCategory | undefined; /** * A list of server-generated trackingTokens to which this event applies. */ trackingTokens: Array; /** * The action the user took within a Glean client with respect to the object referred to by the given `trackingToken`. */ event: Event; /** * Position of the element in the case that the client controls order (such as feed and autocomplete). */ position?: number | undefined; /** * For type MANUAL_FEEDBACK, contains string of user feedback. For autocomplete, partial query string. For feed, string of user feedback in addition to manual feedback signals extracted from all suggested content. */ payload?: string | undefined; sessionInfo?: SessionInfo | undefined; /** * The ISO 8601 timestamp when the event occured. */ timestamp?: Date | undefined; user?: User | undefined; /** * The path the client was at when the feedback event triggered. */ pathname?: string | undefined; /** * Where the feedback will be sent, e.g. to Glean, the user's company, or both. If no channels are specified, feedback will go only to Glean. */ channels?: Array | undefined; /** * The URL the client was at when the feedback event triggered. */ url?: string | undefined; /** * The UI element tree associated with the event, if any. */ uiTree?: Array | undefined; /** * The UI element associated with the event, if any. */ uiElement?: string | undefined; manualFeedbackInfo?: ManualFeedbackInfo | undefined; manualFeedbackSideBySideInfo?: ManualFeedbackSideBySideInfo | undefined; seenFeedbackInfo?: SeenFeedbackInfo | undefined; userViewInfo?: UserViewInfo | undefined; workflowFeedbackInfo?: WorkflowFeedbackInfo | undefined; /** * The application ID of the client that sent the feedback event. */ applicationId?: string | undefined; /** * The agent ID of the client that sent the feedback event. */ agentId?: string | undefined; }; /** @internal */ export declare const FeedbackCategory$outboundSchema: z.ZodNativeEnum; /** @internal */ export declare const Event$outboundSchema: z.ZodNativeEnum; /** @internal */ export declare const FeedbackChannel$outboundSchema: z.ZodNativeEnum; /** @internal */ export type Feedback$Outbound = { id?: string | undefined; category?: string | undefined; trackingTokens: Array; event: string; position?: number | undefined; payload?: string | undefined; sessionInfo?: SessionInfo$Outbound | undefined; timestamp?: string | undefined; user?: User$Outbound | undefined; pathname?: string | undefined; channels?: Array | undefined; url?: string | undefined; uiTree?: Array | undefined; uiElement?: string | undefined; manualFeedbackInfo?: ManualFeedbackInfo$Outbound | undefined; manualFeedbackSideBySideInfo?: ManualFeedbackSideBySideInfo$Outbound | undefined; seenFeedbackInfo?: SeenFeedbackInfo$Outbound | undefined; userViewInfo?: UserViewInfo$Outbound | undefined; workflowFeedbackInfo?: WorkflowFeedbackInfo$Outbound | undefined; applicationId?: string | undefined; agentId?: string | undefined; }; /** @internal */ export declare const Feedback$outboundSchema: z.ZodType; export declare function feedbackToJSON(feedback: Feedback): string; //# sourceMappingURL=feedback.d.ts.map