import { type ChatSummary, type MessageSummary, type UserSummary } from "../chat/types.js"; import { type DrizzleExecutor } from "../drizzle.js"; /** * Ranks visible people, channels, and message projections into one cursor-based search page. * Keeping visibility rules and cross-entity scoring together makes every search caller observe the same result ordering. */ export declare function searchPageGet(executor: DrizzleExecutor, input: { userId: string; query: string; limit: number; cursor?: string; types?: readonly ("user" | "channel" | "message")[]; }): Promise<{ results: Array<{ type: "message"; score: number; message: MessageSummary; } | { type: "channel"; score: number; channel: ChatSummary; } | { type: "user"; score: number; user: UserSummary; }>; nextCursor?: string; }>; //# sourceMappingURL=searchPageGet.d.ts.map