import type { RequestOptions } from "../base-client"; import { RequestBuilder } from "../request-builder"; export interface PortalInvitation { id: string; type: "portal-invitation"; attributes: { email: string; expires_at: string; accepted_at: string | null; inserted_at: string; updated_at: string; }; relationships?: { tenant?: { data: { id: string; type: string; }; }; invited_by?: { data: { id: string; type: string; }; }; }; } export interface PortalChangeRequest { id: string; type: "portal-change-request"; attributes: { field_name: string; old_value: string | null; new_value: string; status: string; reviewed_at: string | null; inserted_at: string; updated_at: string; }; relationships?: { portal_user?: { data: { id: string; type: string; }; }; tenant?: { data: { id: string; type: string; }; }; reviewed_by?: { data: { id: string; type: string; } | null; }; }; } export declare function createPortalNamespace(rb: RequestBuilder): { invitations: { /** * List all portal invitations. */ list: (options?: RequestOptions) => Promise; /** * Create a new portal invitation. * @param email - Email to invite * @param tenantId - Tenant to invite into * @param invitedById - User who is sending the invitation */ create: (email: string, tenantId: string, invitedById: string, options?: RequestOptions) => Promise; /** * Delete a portal invitation. * @param id - Invitation ID */ delete: (id: string, options?: RequestOptions) => Promise; }; changeRequests: { /** * List all portal change requests. */ list: (options?: RequestOptions) => Promise; /** * Approve a change request. * @param id - Change request ID * @param reviewedById - Admin user approving */ approve: (id: string, reviewedById: string, options?: RequestOptions) => Promise; /** * Reject a change request. * @param id - Change request ID * @param reviewedById - Admin user rejecting */ reject: (id: string, reviewedById: string, options?: RequestOptions) => Promise; }; }; //# sourceMappingURL=portal.d.ts.map