import { ApiClient } from './client'; import { ApiResponse, Tenant, TenantCreateParams, TenantUpdateParams, TenantUserAssignParams, TenantFilters, TenantListResponse, PaginationParams, PaginatedResponse } from './types'; export declare class Tenants { private client; constructor(client: ApiClient); /** * Get a paginated list of tenants (SYSTEM only) * @param filters Optional filter parameters * @returns Promise with paginated tenant list */ list(filters?: TenantFilters): Promise>; /** * Get a paginated list of tenants with pagination controls (SYSTEM only) * @param paginationParams Pagination parameters (page, limit, sort, order) * @param filters Optional filter parameters * @returns Promise with paginated tenants */ listPaginated(paginationParams: PaginationParams, filters?: TenantFilters): Promise>; /** * Get a specific tenant by ID * @param tenantId The ID of the tenant to retrieve * @returns Promise with tenant details */ get(tenantId: string): Promise>; /** * Create a new tenant (SYSTEM only) * @param params The tenant creation parameters * @returns Promise with the created tenant */ create(params: TenantCreateParams): Promise>; /** * Update an existing tenant * @param tenantId The ID of the tenant to update * @param params The tenant update parameters * @returns Promise with the updated tenant */ update(tenantId: string, params: TenantUpdateParams): Promise>; /** * Delete a tenant (SYSTEM only) * @param tenantId The ID of the tenant to delete * @returns Promise with the deletion result */ delete(tenantId: string): Promise>; /** * Assign a user to a tenant (SYSTEM only) * @param tenantId The ID of the tenant to assign the user to * @param params The user assignment parameters * @returns Promise with the assignment result */ assignUser(tenantId: string, params: TenantUserAssignParams): Promise>; }