import { parseAsString, parseAsBoolean, parseAsStringLiteral, parseAsArrayOf, } from "nuqs" // Modal states export const addDocumentParam = parseAsStringLiteral([ "note", "link", "file", "connect", ] as const) export const mcpParam = parseAsBoolean.withDefault(false) export const searchParam = parseAsBoolean.withDefault(false) export const qParam = parseAsString.withDefault("") export const docParam = parseAsString export const fullscreenParam = parseAsBoolean.withDefault(false) export const chatParam = parseAsBoolean export const threadParam = parseAsString export const shareParam = parseAsBoolean.withDefault(false) export const feedbackParam = parseAsBoolean.withDefault(false) // View & filter states const viewLiterals = [ "dashboard", "graph", "list", "integrations", "chat", ] as const const integrationLiterals = [ "import", "chrome", "connections", "notion", "google-drive", ] as const export type IntegrationParamValue = (typeof integrationLiterals)[number] export const integrationParam = parseAsStringLiteral(integrationLiterals) export type ViewParamValue = (typeof viewLiterals)[number] export const viewParam = parseAsStringLiteral(viewLiterals).withDefault("dashboard") export const pluginsPanelParam = parseAsBoolean export const categoriesParam = parseAsArrayOf(parseAsString, ",").withDefault( [], ) export const projectParam = parseAsArrayOf(parseAsString, ",").withDefault([])