import { JWT } from '@fastify/jwt';
import { SupabaseClient, User, SupabaseClientOptions } from '@supabase/supabase-js';
import { FastifyPluginCallback } from 'fastify';

declare module "fastify" {
    interface FastifyInstance {
        supabaseClient: SupabaseClient;
        jwt: JWT;
    }
    interface FastifyRequest {
        _supabaseClient: SupabaseClient;
        supabaseUser: User;
    }
}
type FastifySupabasePluginOpts = {
    url: string;
    serviceKey: string;
    anonKey: string;
    options?: SupabaseClientOptions<"public">;
};
declare const _default: FastifyPluginCallback<FastifySupabasePluginOpts>;

export { _default as default };
