import type { UserDeviceInfo } from "../../types/userDeviceInfo"; export type FeedbackRating = 1 | 2 | 3 | 4 | 5; export type FeedbackSource = "emoji-modal" | "detailed-feedback" | "help-bug-report"; export type FeedbackAppRuntime = "phone-app" | "web-app"; export type FeedbackScreenshot = { id: string; fileName: string; mimeType: string; sizeBytes: number; width: number; height: number; }; export type FeedbackScreenshotUpload = FeedbackScreenshot & { dataUrl: string; }; export type FeedbackEnvironment = { appRuntime: FeedbackAppRuntime; isPhoneApp: boolean; deviceInfo: Partial | null; userAgent: string | null; language: string | null; viewport: { width: number; height: number; devicePixelRatio: number; } | null; }; export type SubmitFeedbackInput = { rating?: FeedbackRating; message?: string; email?: string; context?: Record | null; source: FeedbackSource; environment?: FeedbackEnvironment; screenshots?: FeedbackScreenshotUpload[]; }; export type FeedbackRecord = { rating: FeedbackRating | null; message: string | null; email: string | null; source: FeedbackSource; context: Record | null; environment: FeedbackEnvironment; screenshots: FeedbackScreenshot[]; timestamp: string; text: string; }; export type SubmitFeedbackResult = { record: FeedbackRecord; slackDelivered: boolean; }; export declare function collectFeedbackEnvironment(): FeedbackEnvironment; export declare function buildFeedbackText(record: FeedbackRecord): string; export declare function createFeedbackRecord(input: SubmitFeedbackInput): FeedbackRecord; export declare function submitFeedback(input: SubmitFeedbackInput): Promise;