UNPKG

@limitly/limitly-nextjs

Version:

Official Next.js SDK for Limitly - API Key management, plans, users and request validation optimized for server-side

82 lines 3 kB
import { HttpClient } from '../client'; import { User, CreateUserRequest, UpdateUserRequest, UserUsage, ApiKey, ApiResponse, PaginatedResponse, RequestOptions } from '../types'; /** * Module for managing Users * Optimized for Next.js server-side rendering */ export declare class UsersModule { private client; constructor(client: HttpClient); /** * Lists all users * @param options - Request options including Next.js cache options * @returns Promise with paginated users */ list(options?: RequestOptions): Promise<PaginatedResponse<User>>; /** * Creates a new user * @param data - User creation data * @param options - Request options * @returns Promise with created user */ create(data: CreateUserRequest, options?: RequestOptions): Promise<ApiResponse<User>>; /** * Gets a specific user by ID * @param userId - The user ID * @param options - Request options including Next.js cache options * @returns Promise with user details */ get(userId: number, options?: RequestOptions): Promise<ApiResponse<User>>; /** * Updates an existing user * @param userId - The user ID * @param data - Update data * @param options - Request options * @returns Promise with updated user */ update(userId: number, data: UpdateUserRequest, options?: RequestOptions): Promise<ApiResponse<User>>; /** * Deletes a user * @param userId - The user ID * @param options - Request options * @returns Promise with deletion confirmation */ delete(userId: number, options?: RequestOptions): Promise<ApiResponse<{ message: string; }>>; /** * Gets user usage statistics * @param userId - The user ID * @param options - Request options including Next.js cache options * @returns Promise with user usage */ getUsage(userId: number, options?: RequestOptions): Promise<ApiResponse<UserUsage>>; /** * Gets all API Keys for a user * @param userId - The user ID * @param options - Request options including Next.js cache options * @returns Promise with user API keys */ getKeys(userId: number, options?: RequestOptions): Promise<ApiResponse<ApiKey[]>>; /** * Creates a new API Key for a user * @param userId - The user ID * @param data - API key creation data * @param options - Request options * @returns Promise with created API key */ createKey(userId: number, data: { name: string; plan_id?: string; status?: 'active' | 'inactive'; }, options?: RequestOptions): Promise<ApiResponse<ApiKey>>; /** * Gets users with usage statistics (optimized for Next.js) * @param options - Request options * @returns Promise with users and their usage */ listWithUsage(options?: RequestOptions): Promise<PaginatedResponse<User & { usage?: UserUsage; }>>; } //# sourceMappingURL=users.d.ts.map