import { Base } from "./Base"; import type { User } from "./UserService"; import { Except } from "type-fest"; import type { MapToEntity } from "./types/types"; import { TeamEntityKind } from "./TeamService"; export declare const invitationEntityKinds: readonly ["directInvite", "emailInvite", "weblinkInvite"]; export type InvitationEntityKind = typeof invitationEntityKinds[number]; /** * * @remarks * This interface should be generated using OpenAPI generator in the future. * * @alpha */ export interface Invitation { spaceId?: string; spaceName?: string; spaceDescription?: string; invitedUsername?: string; kind?: InvitationEntityKind; id?: string; createdBy?: User; createdById?: string; createdAt?: string; updatedAt?: string; invitedEmail?: string; invitedUserId?: string; invitedUser?: User; state?: "pending" | "accepted" | "rejected" | "revoked"; expiryTime?: Date | string; role?: TeamEntityKind; } export type InvitationEntity = MapToEntity; /** * * The class for consuming all `invitation` resources. * * @remarks * This class should be generated using OpenAPI generator in the future. * * @alpha */ declare class InvitationService extends Base { /** * Get invitation by id */ getOne({ id, queryString }: { id: string; queryString?: string; }): Promise; /** * Get invitation by key */ getOneByKey({ key }: { key: string; }): Promise; /** * Get invitations */ getMany(): Promise; /** * Create one invitation */ createOne(invitation: Invitation): Promise; /** * Update one invitation */ updateOne(invitation: Except & { id: string; }): Promise; } export { InvitationService };