/* tslint:disable */
/* eslint-disable */
/**
 * Daytona
 * Daytona AI platform API Docs
 *
 * The version of the OpenAPI document: 1.0
 * Contact: support@daytona.com
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */


// May contain unused imports in some cases
// @ts-ignore
import type { OrganizationRole } from './organization-role';

export interface OrganizationInvitation {
    /**
     * Invitation ID
     */
    'id': string;
    /**
     * Email address of the invitee
     */
    'email': string;
    /**
     * Email address of the inviter
     */
    'invitedBy': string;
    /**
     * Organization ID
     */
    'organizationId': string;
    /**
     * Organization name
     */
    'organizationName': string;
    /**
     * Expiration date of the invitation
     */
    'expiresAt': Date;
    /**
     * Invitation status
     */
    'status': OrganizationInvitationStatusEnum;
    /**
     * Member role
     */
    'role': OrganizationInvitationRoleEnum;
    /**
     * Assigned roles
     */
    'assignedRoles': Array<OrganizationRole>;
    /**
     * Creation timestamp
     */
    'createdAt': Date;
    /**
     * Last update timestamp
     */
    'updatedAt': Date;
}

export const OrganizationInvitationStatusEnum = {
    PENDING: 'pending',
    ACCEPTED: 'accepted',
    DECLINED: 'declined',
    CANCELLED: 'cancelled',
    UNKNOWN_DEFAULT_OPEN_API: '11184809',
} as const;

export type OrganizationInvitationStatusEnum = typeof OrganizationInvitationStatusEnum[keyof typeof OrganizationInvitationStatusEnum];
export const OrganizationInvitationRoleEnum = {
    OWNER: 'owner',
    MEMBER: 'member',
    UNKNOWN_DEFAULT_OPEN_API: '11184809',
} as const;

export type OrganizationInvitationRoleEnum = typeof OrganizationInvitationRoleEnum[keyof typeof OrganizationInvitationRoleEnum];


