import { St as InferUser, xt as InferSession } from "./index-nluIr-xs.mjs"; import * as _better_auth_core4 from "@better-auth/core"; import { BetterAuthOptions, GenericEndpointContext } from "@better-auth/core"; import * as z from "zod"; import * as better_call20 from "better-call"; //#region src/plugins/custom-session/index.d.ts type CustomSessionPluginOptions = { /** * This option is used to determine if the list-device-sessions endpoint should be mutated to the custom session data. * @default false */ shouldMutateListDeviceSessionsEndpoint?: boolean | undefined; }; declare const customSession: , O extends BetterAuthOptions = BetterAuthOptions>(fn: (session: { user: InferUser; session: InferSession; }, ctx: GenericEndpointContext) => Promise, options?: O | undefined, pluginOptions?: CustomSessionPluginOptions | undefined) => { id: "custom-session"; hooks: { after: { matcher: (ctx: _better_auth_core4.HookEndpointContext) => boolean; handler: (inputContext: better_call20.MiddlewareInputContext) => Promise[] | undefined>; }[]; }; endpoints: { getSession: better_call20.StrictEndpoint<"/get-session", { method: "GET"; query: z.ZodOptional>]>>; disableRefresh: z.ZodOptional; }, z.core.$strip>>; metadata: { CUSTOM_SESSION: boolean; openapi: { description: string; responses: { "200": { description: string; content: { "application/json": { schema: { type: "array"; nullable: boolean; items: { $ref: string; }; }; }; }; }; }; }; }; requireHeaders: true; } & { use: any[]; }, Returns | null>; }; $Infer: { Session: Awaited>; }; }; //#endregion export { customSession as n, CustomSessionPluginOptions as t };