/**
 * @fileoverview Generic handler to retrieve a single entity from Supabase.
 * @description Provides a reusable implementation for retrieving documents from PostgreSQL with visibility filtering.
 *
 * @version 0.1.0
 * @since 0.5.0
 * @author AMBROISE PARK Consulting
 */
import * as v from 'valibot';
import type { EntityOwnershipConfig, UserRole } from '@donotdev/core/server';
/** Request payload for retrieving a single entity by ID. */
export type GetEntityRequest = {
    id: string;
};
/**
 * Create a Supabase Edge Function handler for getting a single entity.
 *
 * @param collection - The Supabase table name
 * @param documentSchema - The Valibot schema for document validation
 * @param requiredRole - Minimum role required for this operation
 * @param ownership - Optional ownership config for visibility: 'owner' field masking
 * @returns A `(req: Request) => Promise<Response>` handler for Deno.serve
 */
export declare function createSupabaseGetEntity(collection: string, documentSchema: v.BaseSchema<unknown, any, v.BaseIssue<unknown>>, requiredRole: UserRole, ownership?: EntityOwnershipConfig): (req: Request) => Promise<Response>;
