import { Model } from 'mongoose'; import { TenantEntity } from '../models/entity.model'; import { User } from './user.entity'; export declare enum MembershipStatus { INVITED = "INVITED", ACTIVE = "ACTIVE", DISABLED = "DISABLED" } export declare const MembershipStatusDecorator: PropertyDecorator; export declare class Membership extends TenantEntity { userId: string; email: string; permissions: string[]; roles: string[]; status: MembershipStatus; } export type MembershipModel = Model; export declare const MembershipSchema: import("mongoose").Schema & Membership & Required<{ _id: string; }> & { __v: number; } & { id: string; }) | (import("mongoose").Document & Membership & Required<{ _id: string; }> & { __v: number; }), any, Membership>, {}, {}, {}, {}, import("mongoose").DefaultSchemaOptions, Membership, import("mongoose").Document & Omit & { __v: number; }, "id"> & { id: string; }, { userId?: import("mongoose").SchemaDefinitionProperty & Omit & { __v: number; }, "id"> & { id: string; }> | undefined; email?: import("mongoose").SchemaDefinitionProperty & Omit & { __v: number; }, "id"> & { id: string; }> | undefined; permissions?: import("mongoose").SchemaDefinitionProperty & Omit & { __v: number; }, "id"> & { id: string; }> | undefined; roles?: import("mongoose").SchemaDefinitionProperty & Omit & { __v: number; }, "id"> & { id: string; }> | undefined; status?: import("mongoose").SchemaDefinitionProperty & Omit & { __v: number; }, "id"> & { id: string; }> | undefined; tenantId?: import("mongoose").SchemaDefinitionProperty & Omit & { __v: number; }, "id"> & { id: string; }> | undefined; _id?: import("mongoose").SchemaDefinitionProperty & Omit & { __v: number; }, "id"> & { id: string; }> | undefined; uuid?: import("mongoose").SchemaDefinitionProperty & Omit & { __v: number; }, "id"> & { id: string; }> | undefined; createdAt?: import("mongoose").SchemaDefinitionProperty & Omit & { __v: number; }, "id"> & { id: string; }> | undefined; createdBy?: import("mongoose").SchemaDefinitionProperty & Omit & { __v: number; }, "id"> & { id: string; }> | undefined; changedAt?: import("mongoose").SchemaDefinitionProperty & Omit & { __v: number; }, "id"> & { id: string; }> | undefined; changedBy?: import("mongoose").SchemaDefinitionProperty & Omit & { __v: number; }, "id"> & { id: string; }> | undefined; deletedAt?: import("mongoose").SchemaDefinitionProperty & Omit & { __v: number; }, "id"> & { id: string; }> | undefined; deletedBy?: import("mongoose").SchemaDefinitionProperty & Omit & { __v: number; }, "id"> & { id: string; }> | undefined; version?: import("mongoose").SchemaDefinitionProperty & Omit & { __v: number; }, "id"> & { id: string; }> | undefined; }, Membership>; export declare class MembershipCreateRequest { email: string; permissions: string[]; } declare const MembershipPopulated_base: import("@nestjs/common").Type>; export declare class MembershipPopulated extends MembershipPopulated_base { user: User; } export declare class MembershipUpdateRequest { permissions: string[]; } export declare class MembershipPathParams { userId: string; } export {};