Beignet API reference
    Preparing search index...

    Interface CreateBetterAuthAgentCapabilityAdapterOptions<Definitions>

    Options for adapting a Beignet registry to Better Auth Agent Auth.

    interface CreateBetterAuthAgentCapabilityAdapterOptions<
        Definitions extends readonly AnyAgentCapabilityDef[],
    > {
        executor:
            | (
                () => MaybePromise<
                    AgentCapabilityExecutor<
                        AgentCapabilityPrincipal<Definitions[number]>,
                        Definitions,
                    >,
                >
            )
            | AgentCapabilityExecutor<
                AgentCapabilityPrincipal<Definitions[number]>,
                Definitions,
            >;
        metadata?: Partial<
            Record<Definitions[number]["name"], BetterAuthAgentCapabilityMetadata>,
        >;
        registry: AgentCapabilityRegistry<Definitions>;
        schemaConverter?: SchemaConverter;
        principal(
            context: {
                agentSession: AgentSession;
                arguments?: Record<string, unknown>;
                capability: string;
                capabilityDef: Capability;
                ctx: GenericEndpointContext;
                grant: AgentCapabilityGrant;
                revokeGrant: () => Promise<void>;
            },
        ): MaybePromise<AgentCapabilityPrincipal<Definitions[number]>>;
    }

    Type Parameters

    Index
    executor:
        | (
            () => MaybePromise<
                AgentCapabilityExecutor<
                    AgentCapabilityPrincipal<Definitions[number]>,
                    Definitions,
                >,
            >
        )
        | AgentCapabilityExecutor<
            AgentCapabilityPrincipal<Definitions[number]>,
            Definitions,
        >

    Direct executor or lazy factory memoized after its first successful load.

    metadata?: Partial<
        Record<Definitions[number]["name"], BetterAuthAgentCapabilityMetadata>,
    >

    Transport metadata keyed by names in the Beignet capability registry.

    schemaConverter?: SchemaConverter

    Converter used to expose Standard Schema inputs and outputs as JSON Schema.

    • Parameters

      • context: {
            agentSession: AgentSession;
            arguments?: Record<string, unknown>;
            capability: string;
            capabilityDef: Capability;
            ctx: GenericEndpointContext;
            grant: AgentCapabilityGrant;
            revokeGrant: () => Promise<void>;
        }
        • agentSession: AgentSession
        • Optionalarguments?: Record<string, unknown>
        • capability: string
        • capabilityDef: Capability
        • ctx: GenericEndpointContext
        • grant: AgentCapabilityGrant

          The active grant that authorized this execution.

        • revokeGrant: () => Promise<void>

          Revoke the grant that authorized this execution. Call this for single-use capabilities (e.g. payments) to consume the grant after successful execution.

      Returns MaybePromise<AgentCapabilityPrincipal<Definitions[number]>>