import type { Schema, Struct } from '@strapi/strapi'; export interface AdminApiToken extends Struct.CollectionTypeSchema { collectionName: 'strapi_api_tokens'; info: { description: ''; displayName: 'Api Token'; name: 'Api Token'; pluralName: 'api-tokens'; singularName: 'api-token'; }; options: { draftAndPublish: false; }; pluginOptions: { 'content-manager': { visible: false; }; 'content-type-builder': { visible: false; }; }; attributes: { accessKey: Schema.Attribute.String & Schema.Attribute.Required & Schema.Attribute.SetMinMaxLength<{ minLength: 1; }>; createdAt: Schema.Attribute.DateTime; createdBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & Schema.Attribute.Private; description: Schema.Attribute.String & Schema.Attribute.SetMinMaxLength<{ minLength: 1; }> & Schema.Attribute.DefaultTo<''>; expiresAt: Schema.Attribute.DateTime; lastUsedAt: Schema.Attribute.DateTime; lifespan: Schema.Attribute.BigInteger; locale: Schema.Attribute.String & Schema.Attribute.Private; localizations: Schema.Attribute.Relation<'oneToMany', 'admin::api-token'> & Schema.Attribute.Private; name: Schema.Attribute.String & Schema.Attribute.Required & Schema.Attribute.Unique & Schema.Attribute.SetMinMaxLength<{ minLength: 1; }>; permissions: Schema.Attribute.Relation< 'oneToMany', 'admin::api-token-permission' >; publishedAt: Schema.Attribute.DateTime; type: Schema.Attribute.Enumeration<['read-only', 'full-access', 'custom']> & Schema.Attribute.Required & Schema.Attribute.DefaultTo<'read-only'>; updatedAt: Schema.Attribute.DateTime; updatedBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & Schema.Attribute.Private; }; } export interface AdminApiTokenPermission extends Struct.CollectionTypeSchema { collectionName: 'strapi_api_token_permissions'; info: { description: ''; displayName: 'API Token Permission'; name: 'API Token Permission'; pluralName: 'api-token-permissions'; singularName: 'api-token-permission'; }; options: { draftAndPublish: false; }; pluginOptions: { 'content-manager': { visible: false; }; 'content-type-builder': { visible: false; }; }; attributes: { action: Schema.Attribute.String & Schema.Attribute.Required & Schema.Attribute.SetMinMaxLength<{ minLength: 1; }>; createdAt: Schema.Attribute.DateTime; createdBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & Schema.Attribute.Private; locale: Schema.Attribute.String & Schema.Attribute.Private; localizations: Schema.Attribute.Relation< 'oneToMany', 'admin::api-token-permission' > & Schema.Attribute.Private; publishedAt: Schema.Attribute.DateTime; token: Schema.Attribute.Relation<'manyToOne', 'admin::api-token'>; updatedAt: Schema.Attribute.DateTime; updatedBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & Schema.Attribute.Private; }; } export interface AdminPermission extends Struct.CollectionTypeSchema { collectionName: 'admin_permissions'; info: { description: ''; displayName: 'Permission'; name: 'Permission'; pluralName: 'permissions'; singularName: 'permission'; }; options: { draftAndPublish: false; }; pluginOptions: { 'content-manager': { visible: false; }; 'content-type-builder': { visible: false; }; }; attributes: { action: Schema.Attribute.String & Schema.Attribute.Required & Schema.Attribute.SetMinMaxLength<{ minLength: 1; }>; actionParameters: Schema.Attribute.JSON & Schema.Attribute.DefaultTo<{}>; conditions: Schema.Attribute.JSON & Schema.Attribute.DefaultTo<[]>; createdAt: Schema.Attribute.DateTime; createdBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & Schema.Attribute.Private; locale: Schema.Attribute.String & Schema.Attribute.Private; localizations: Schema.Attribute.Relation<'oneToMany', 'admin::permission'> & Schema.Attribute.Private; properties: Schema.Attribute.JSON & Schema.Attribute.DefaultTo<{}>; publishedAt: Schema.Attribute.DateTime; role: Schema.Attribute.Relation<'manyToOne', 'admin::role'>; subject: Schema.Attribute.String & Schema.Attribute.SetMinMaxLength<{ minLength: 1; }>; updatedAt: Schema.Attribute.DateTime; updatedBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & Schema.Attribute.Private; }; } export interface AdminRole extends Struct.CollectionTypeSchema { collectionName: 'admin_roles'; info: { description: ''; displayName: 'Role'; name: 'Role'; pluralName: 'roles'; singularName: 'role'; }; options: { draftAndPublish: false; }; pluginOptions: { 'content-manager': { visible: false; }; 'content-type-builder': { visible: false; }; }; attributes: { code: Schema.Attribute.String & Schema.Attribute.Required & Schema.Attribute.Unique & Schema.Attribute.SetMinMaxLength<{ minLength: 1; }>; createdAt: Schema.Attribute.DateTime; createdBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & Schema.Attribute.Private; description: Schema.Attribute.String; locale: Schema.Attribute.String & Schema.Attribute.Private; localizations: Schema.Attribute.Relation<'oneToMany', 'admin::role'> & Schema.Attribute.Private; name: Schema.Attribute.String & Schema.Attribute.Required & Schema.Attribute.Unique & Schema.Attribute.SetMinMaxLength<{ minLength: 1; }>; permissions: Schema.Attribute.Relation<'oneToMany', 'admin::permission'>; publishedAt: Schema.Attribute.DateTime; updatedAt: Schema.Attribute.DateTime; updatedBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & Schema.Attribute.Private; users: Schema.Attribute.Relation<'manyToMany', 'admin::user'>; }; } export interface AdminTransferToken extends Struct.CollectionTypeSchema { collectionName: 'strapi_transfer_tokens'; info: { description: ''; displayName: 'Transfer Token'; name: 'Transfer Token'; pluralName: 'transfer-tokens'; singularName: 'transfer-token'; }; options: { draftAndPublish: false; }; pluginOptions: { 'content-manager': { visible: false; }; 'content-type-builder': { visible: false; }; }; attributes: { accessKey: Schema.Attribute.String & Schema.Attribute.Required & Schema.Attribute.SetMinMaxLength<{ minLength: 1; }>; createdAt: Schema.Attribute.DateTime; createdBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & Schema.Attribute.Private; description: Schema.Attribute.String & Schema.Attribute.SetMinMaxLength<{ minLength: 1; }> & Schema.Attribute.DefaultTo<''>; expiresAt: Schema.Attribute.DateTime; lastUsedAt: Schema.Attribute.DateTime; lifespan: Schema.Attribute.BigInteger; locale: Schema.Attribute.String & Schema.Attribute.Private; localizations: Schema.Attribute.Relation< 'oneToMany', 'admin::transfer-token' > & Schema.Attribute.Private; name: Schema.Attribute.String & Schema.Attribute.Required & Schema.Attribute.Unique & Schema.Attribute.SetMinMaxLength<{ minLength: 1; }>; permissions: Schema.Attribute.Relation< 'oneToMany', 'admin::transfer-token-permission' >; publishedAt: Schema.Attribute.DateTime; updatedAt: Schema.Attribute.DateTime; updatedBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & Schema.Attribute.Private; }; } export interface AdminTransferTokenPermission extends Struct.CollectionTypeSchema { collectionName: 'strapi_transfer_token_permissions'; info: { description: ''; displayName: 'Transfer Token Permission'; name: 'Transfer Token Permission'; pluralName: 'transfer-token-permissions'; singularName: 'transfer-token-permission'; }; options: { draftAndPublish: false; }; pluginOptions: { 'content-manager': { visible: false; }; 'content-type-builder': { visible: false; }; }; attributes: { action: Schema.Attribute.String & Schema.Attribute.Required & Schema.Attribute.SetMinMaxLength<{ minLength: 1; }>; createdAt: Schema.Attribute.DateTime; createdBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & Schema.Attribute.Private; locale: Schema.Attribute.String & Schema.Attribute.Private; localizations: Schema.Attribute.Relation< 'oneToMany', 'admin::transfer-token-permission' > & Schema.Attribute.Private; publishedAt: Schema.Attribute.DateTime; token: Schema.Attribute.Relation<'manyToOne', 'admin::transfer-token'>; updatedAt: Schema.Attribute.DateTime; updatedBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & Schema.Attribute.Private; }; } export interface AdminUser extends Struct.CollectionTypeSchema { collectionName: 'admin_users'; info: { description: ''; displayName: 'User'; name: 'User'; pluralName: 'users'; singularName: 'user'; }; options: { draftAndPublish: false; }; pluginOptions: { 'content-manager': { visible: false; }; 'content-type-builder': { visible: false; }; }; attributes: { blocked: Schema.Attribute.Boolean & Schema.Attribute.Private & Schema.Attribute.DefaultTo; createdAt: Schema.Attribute.DateTime; createdBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & Schema.Attribute.Private; email: Schema.Attribute.Email & Schema.Attribute.Required & Schema.Attribute.Private & Schema.Attribute.Unique & Schema.Attribute.SetMinMaxLength<{ minLength: 6; }>; firstname: Schema.Attribute.String & Schema.Attribute.SetMinMaxLength<{ minLength: 1; }>; isActive: Schema.Attribute.Boolean & Schema.Attribute.Private & Schema.Attribute.DefaultTo; lastname: Schema.Attribute.String & Schema.Attribute.SetMinMaxLength<{ minLength: 1; }>; locale: Schema.Attribute.String & Schema.Attribute.Private; localizations: Schema.Attribute.Relation<'oneToMany', 'admin::user'> & Schema.Attribute.Private; password: Schema.Attribute.Password & Schema.Attribute.Private & Schema.Attribute.SetMinMaxLength<{ minLength: 6; }>; preferedLanguage: Schema.Attribute.String; publishedAt: Schema.Attribute.DateTime; registrationToken: Schema.Attribute.String & Schema.Attribute.Private; resetPasswordToken: Schema.Attribute.String & Schema.Attribute.Private; roles: Schema.Attribute.Relation<'manyToMany', 'admin::role'> & Schema.Attribute.Private; updatedAt: Schema.Attribute.DateTime; updatedBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & Schema.Attribute.Private; username: Schema.Attribute.String; }; } export interface ApiAdAd extends Struct.CollectionTypeSchema { collectionName: 'ads'; info: { description: ''; displayName: 'Ad'; pluralName: 'ads'; singularName: 'ad'; }; options: { draftAndPublish: false; }; attributes: { applies: Schema.Attribute.Integer; author: Schema.Attribute.Relation< 'oneToOne', 'plugin::users-permissions.user' >; category: Schema.Attribute.Enumeration< ['hire', 'equipment', 'management', 'sheetmusic', 'local'] >; contactemail: Schema.Attribute.String; contactname: Schema.Attribute.String; contactphone: Schema.Attribute.String; createdAt: Schema.Attribute.DateTime; createdBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & Schema.Attribute.Private; description: Schema.Attribute.Text; featured: Schema.Attribute.Boolean; locale: Schema.Attribute.String & Schema.Attribute.Private; localizations: Schema.Attribute.Relation<'oneToMany', 'api::ad.ad'> & Schema.Attribute.Private; location: Schema.Attribute.Component<'address.full-address', false>; publishedAt: Schema.Attribute.DateTime; title: Schema.Attribute.String; updatedAt: Schema.Attribute.DateTime; updatedBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & Schema.Attribute.Private; validUntil: Schema.Attribute.Date; views: Schema.Attribute.Integer; }; } export interface ApiAnnouncementAnnouncement extends Struct.CollectionTypeSchema { collectionName: 'announcements'; info: { description: ''; displayName: 'Announcement'; pluralName: 'announcements'; singularName: 'announcement'; }; options: { draftAndPublish: false; }; attributes: { author: Schema.Attribute.Relation< 'manyToOne', 'plugin::users-permissions.user' >; choral: Schema.Attribute.Relation<'manyToOne', 'api::choral.choral'>; createdAt: Schema.Attribute.DateTime; createdBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & Schema.Attribute.Private; description: Schema.Attribute.String; locale: Schema.Attribute.String & Schema.Attribute.Private; localizations: Schema.Attribute.Relation< 'oneToMany', 'api::announcement.announcement' > & Schema.Attribute.Private; publishedAt: Schema.Attribute.DateTime; title: Schema.Attribute.String; updatedAt: Schema.Attribute.DateTime; updatedBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & Schema.Attribute.Private; }; } export interface ApiBoardCardBoardCard extends Struct.CollectionTypeSchema { collectionName: 'board_cards'; info: { description: ''; displayName: 'BoardCard'; pluralName: 'board-cards'; singularName: 'board-card'; }; options: { draftAndPublish: false; }; attributes: { boardList: Schema.Attribute.Relation< 'manyToOne', 'api::board-list.board-list' >; createdAt: Schema.Attribute.DateTime; createdBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & Schema.Attribute.Private; description: Schema.Attribute.Text; image: Schema.Attribute.Media<'images' | 'files' | 'videos' | 'audios'>; imageUrl: Schema.Attribute.String; locale: Schema.Attribute.String & Schema.Attribute.Private; localizations: Schema.Attribute.Relation< 'oneToMany', 'api::board-card.board-card' > & Schema.Attribute.Private; order: Schema.Attribute.Integer; publishedAt: Schema.Attribute.DateTime; title: Schema.Attribute.String; type: Schema.Attribute.Enumeration< ['link', 'youtube', 'image', 'video', 'audio', 'pdf'] >; updatedAt: Schema.Attribute.DateTime; updatedBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & Schema.Attribute.Private; url: Schema.Attribute.String; }; } export interface ApiBoardListBoardList extends Struct.CollectionTypeSchema { collectionName: 'board_lists'; info: { description: ''; displayName: 'BoardList'; pluralName: 'board-lists'; singularName: 'board-list'; }; options: { draftAndPublish: false; }; attributes: { board: Schema.Attribute.Relation<'manyToOne', 'api::board.board'>; cards: Schema.Attribute.Relation<'oneToMany', 'api::board-card.board-card'>; createdAt: Schema.Attribute.DateTime; createdBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & Schema.Attribute.Private; locale: Schema.Attribute.String & Schema.Attribute.Private; localizations: Schema.Attribute.Relation< 'oneToMany', 'api::board-list.board-list' > & Schema.Attribute.Private; order: Schema.Attribute.Integer; publishedAt: Schema.Attribute.DateTime; title: Schema.Attribute.String; updatedAt: Schema.Attribute.DateTime; updatedBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & Schema.Attribute.Private; }; } export interface ApiBoardBoard extends Struct.CollectionTypeSchema { collectionName: 'boards'; info: { description: ''; displayName: 'Board'; pluralName: 'boards'; singularName: 'board'; }; options: { draftAndPublish: false; }; attributes: { board_lists: Schema.Attribute.Relation< 'oneToMany', 'api::board-list.board-list' >; choral: Schema.Attribute.Relation<'manyToOne', 'api::choral.choral'>; createdAt: Schema.Attribute.DateTime; createdBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & Schema.Attribute.Private; image: Schema.Attribute.Media<'images' | 'files' | 'videos' | 'audios'>; locale: Schema.Attribute.String & Schema.Attribute.Private; localizations: Schema.Attribute.Relation<'oneToMany', 'api::board.board'> & Schema.Attribute.Private; publishedAt: Schema.Attribute.DateTime; title: Schema.Attribute.String; unsplashImage: Schema.Attribute.String; updatedAt: Schema.Attribute.DateTime; updatedBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & Schema.Attribute.Private; }; } export interface ApiChannelChannel extends Struct.CollectionTypeSchema { collectionName: 'channels'; info: { displayName: 'Channel'; pluralName: 'channels'; singularName: 'channel'; }; options: { draftAndPublish: false; }; attributes: { choral: Schema.Attribute.Relation<'manyToOne', 'api::choral.choral'>; createdAt: Schema.Attribute.DateTime; createdBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & Schema.Attribute.Private; locale: Schema.Attribute.String & Schema.Attribute.Private; localizations: Schema.Attribute.Relation< 'oneToMany', 'api::channel.channel' > & Schema.Attribute.Private; messages: Schema.Attribute.Relation<'oneToMany', 'api::message.message'>; name: Schema.Attribute.String; publishedAt: Schema.Attribute.DateTime; type: Schema.Attribute.Enumeration<['TEXT', 'AUDIO', 'VIDEO']>; updatedAt: Schema.Attribute.DateTime; updatedBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & Schema.Attribute.Private; }; } export interface ApiChoralMembershipChoralMembership extends Struct.CollectionTypeSchema { collectionName: 'choral_memberships'; info: { description: ''; displayName: 'ChoralMembership'; pluralName: 'choral-memberships'; singularName: 'choral-membership'; }; options: { draftAndPublish: false; }; attributes: { choral: Schema.Attribute.Relation<'manyToOne', 'api::choral.choral'>; createdAt: Schema.Attribute.DateTime; createdBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & Schema.Attribute.Private; locale: Schema.Attribute.String & Schema.Attribute.Private; localizations: Schema.Attribute.Relation< 'oneToMany', 'api::choral-membership.choral-membership' > & Schema.Attribute.Private; permissions: Schema.Attribute.Component<'user.permissions', true>; publishedAt: Schema.Attribute.DateTime; role: Schema.Attribute.Enumeration<['member', 'admin', 'owner']>; updatedAt: Schema.Attribute.DateTime; updatedBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & Schema.Attribute.Private; user: Schema.Attribute.Relation< 'manyToOne', 'plugin::users-permissions.user' >; }; } export interface ApiChoralPermissionChoralPermission extends Struct.CollectionTypeSchema { collectionName: 'choral_permissions'; info: { description: ''; displayName: 'ChoralPermission'; pluralName: 'choral-permissions'; singularName: 'choral-permission'; }; options: { draftAndPublish: false; }; attributes: { choralId: Schema.Attribute.Integer; choralName: Schema.Attribute.String; createdAt: Schema.Attribute.DateTime; createdBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & Schema.Attribute.Private; locale: Schema.Attribute.String & Schema.Attribute.Private; localizations: Schema.Attribute.Relation< 'oneToMany', 'api::choral-permission.choral-permission' > & Schema.Attribute.Private; permissions: Schema.Attribute.Component<'user.permissions', true>; publishedAt: Schema.Attribute.DateTime; updatedAt: Schema.Attribute.DateTime; updatedBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & Schema.Attribute.Private; user: Schema.Attribute.Relation< 'manyToOne', 'plugin::users-permissions.user' >; }; } export interface ApiChoralChoral extends Struct.CollectionTypeSchema { collectionName: 'chorals'; info: { description: ''; displayName: 'Choral'; pluralName: 'chorals'; singularName: 'choral'; }; options: { draftAndPublish: false; }; attributes: { address: Schema.Attribute.String; admins: Schema.Attribute.Relation< 'manyToMany', 'plugin::users-permissions.user' >; announcements: Schema.Attribute.Relation< 'oneToMany', 'api::announcement.announcement' >; boards: Schema.Attribute.Relation<'oneToMany', 'api::board.board'>; calendar: Schema.Attribute.Relation<'oneToMany', 'api::event.event'>; channels: Schema.Attribute.Relation<'oneToMany', 'api::channel.channel'>; city: Schema.Attribute.String; country: Schema.Attribute.String; cover: Schema.Attribute.Media<'images' | 'files' | 'videos' | 'audios'>; createdAt: Schema.Attribute.DateTime; createdBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & Schema.Attribute.Private; email: Schema.Attribute.Email; locale: Schema.Attribute.String & Schema.Attribute.Private; localizations: Schema.Attribute.Relation< 'oneToMany', 'api::choral.choral' > & Schema.Attribute.Private; memberships: Schema.Attribute.Relation< 'oneToMany', 'api::choral-membership.choral-membership' >; name: Schema.Attribute.String; owner: Schema.Attribute.Relation< 'oneToOne', 'plugin::users-permissions.user' >; permissions_templates: Schema.Attribute.Relation< 'oneToMany', 'api::permissions-template.permissions-template' >; phoneNumber: Schema.Attribute.String; postal: Schema.Attribute.Integer; publishedAt: Schema.Attribute.DateTime; updatedAt: Schema.Attribute.DateTime; updatedBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & Schema.Attribute.Private; users: Schema.Attribute.Relation< 'manyToMany', 'plugin::users-permissions.user' >; website: Schema.Attribute.String; }; } export interface ApiCommentComment extends Struct.CollectionTypeSchema { collectionName: 'comments'; info: { description: ''; displayName: 'Comment'; pluralName: 'comments'; singularName: 'comment'; }; options: { draftAndPublish: false; }; attributes: { content: Schema.Attribute.String; createdAt: Schema.Attribute.DateTime; createdBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & Schema.Attribute.Private; likes: Schema.Attribute.Relation< 'oneToMany', 'plugin::users-permissions.user' >; locale: Schema.Attribute.String & Schema.Attribute.Private; localizations: Schema.Attribute.Relation< 'oneToMany', 'api::comment.comment' > & Schema.Attribute.Private; owner: Schema.Attribute.Relation< 'oneToOne', 'plugin::users-permissions.user' >; publishedAt: Schema.Attribute.DateTime; replies: Schema.Attribute.Relation<'oneToMany', 'api::comment.comment'>; updatedAt: Schema.Attribute.DateTime; updatedBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & Schema.Attribute.Private; }; } export interface ApiContactMetaContactMeta extends Struct.CollectionTypeSchema { collectionName: 'contact_metas'; info: { displayName: 'ContactMeta'; pluralName: 'contact-metas'; singularName: 'contact-meta'; }; options: { draftAndPublish: false; }; attributes: { contact: Schema.Attribute.Relation<'manyToOne', 'api::contact.contact'>; createdAt: Schema.Attribute.DateTime; createdBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & Schema.Attribute.Private; favorite: Schema.Attribute.Boolean; locale: Schema.Attribute.String & Schema.Attribute.Private; localizations: Schema.Attribute.Relation< 'oneToMany', 'api::contact-meta.contact-meta' > & Schema.Attribute.Private; note: Schema.Attribute.String; owner: Schema.Attribute.Relation< 'manyToOne', 'plugin::users-permissions.user' >; publishedAt: Schema.Attribute.DateTime; updatedAt: Schema.Attribute.DateTime; updatedBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & Schema.Attribute.Private; }; } export interface ApiContactContact extends Struct.CollectionTypeSchema { collectionName: 'contacts'; info: { description: ''; displayName: 'Contact'; pluralName: 'contacts'; singularName: 'contact'; }; options: { draftAndPublish: false; }; attributes: { createdAt: Schema.Attribute.DateTime; createdBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & Schema.Attribute.Private; locale: Schema.Attribute.String & Schema.Attribute.Private; localizations: Schema.Attribute.Relation< 'oneToMany', 'api::contact.contact' > & Schema.Attribute.Private; message: Schema.Attribute.Text; metas: Schema.Attribute.Relation< 'oneToMany', 'api::contact-meta.contact-meta' >; owner: Schema.Attribute.Relation< 'manyToOne', 'plugin::users-permissions.user' >; publishedAt: Schema.Attribute.DateTime; requestedAt: Schema.Attribute.DateTime; respondedAt: Schema.Attribute.DateTime; state: Schema.Attribute.Enumeration< ['pending', 'accepted', 'rejected', 'blocked', 'follow'] >; updatedAt: Schema.Attribute.DateTime; updatedBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & Schema.Attribute.Private; user: Schema.Attribute.Relation< 'manyToOne', 'plugin::users-permissions.user' >; }; } export interface ApiConversationConversation extends Struct.CollectionTypeSchema { collectionName: 'conversations'; info: { description: ''; displayName: 'Conversation'; pluralName: 'conversations'; singularName: 'conversation'; }; options: { draftAndPublish: false; }; attributes: { createdAt: Schema.Attribute.DateTime; createdBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & Schema.Attribute.Private; direct_messages: Schema.Attribute.Relation< 'oneToMany', 'api::direct-message.direct-message' >; locale: Schema.Attribute.String & Schema.Attribute.Private; localizations: Schema.Attribute.Relation< 'oneToMany', 'api::conversation.conversation' > & Schema.Attribute.Private; publishedAt: Schema.Attribute.DateTime; updatedAt: Schema.Attribute.DateTime; updatedBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & Schema.Attribute.Private; user1: Schema.Attribute.Relation< 'oneToOne', 'plugin::users-permissions.user' >; user2: Schema.Attribute.Relation< 'oneToOne', 'plugin::users-permissions.user' >; }; } export interface ApiDirectMessageDirectMessage extends Struct.CollectionTypeSchema { collectionName: 'direct_messages'; info: { description: ''; displayName: 'DirectMessage'; pluralName: 'direct-messages'; singularName: 'direct-message'; }; options: { draftAndPublish: false; }; attributes: { author: Schema.Attribute.Relation< 'oneToOne', 'plugin::users-permissions.user' >; content: Schema.Attribute.String; conversation: Schema.Attribute.Relation< 'manyToOne', 'api::conversation.conversation' >; createdAt: Schema.Attribute.DateTime; createdBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & Schema.Attribute.Private; fileUrl: Schema.Attribute.String; locale: Schema.Attribute.String & Schema.Attribute.Private; localizations: Schema.Attribute.Relation< 'oneToMany', 'api::direct-message.direct-message' > & Schema.Attribute.Private; publishedAt: Schema.Attribute.DateTime; updatedAt: Schema.Attribute.DateTime; updatedBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & Schema.Attribute.Private; }; } export interface ApiEventRelationshipEventRelationship extends Struct.CollectionTypeSchema { collectionName: 'event_relationships'; info: { description: ''; displayName: 'EventRelationship'; pluralName: 'event-relationships'; singularName: 'event-relationship'; }; options: { draftAndPublish: false; }; attributes: { author: Schema.Attribute.Relation< 'oneToOne', 'plugin::users-permissions.user' >; contextId: Schema.Attribute.Integer; contextType: Schema.Attribute.Enumeration< ['user', 'group', 'choral', 'system'] >; createdAt: Schema.Attribute.DateTime; createdBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & Schema.Attribute.Private; event: Schema.Attribute.Relation<'oneToOne', 'api::event.event'>; locale: Schema.Attribute.String & Schema.Attribute.Private; localizations: Schema.Attribute.Relation< 'oneToMany', 'api::event-relationship.event-relationship' > & Schema.Attribute.Private; metas: Schema.Attribute.JSON; publishedAt: Schema.Attribute.DateTime; relation: Schema.Attribute.Enumeration< ['owner', 'interested', 'registered'] >; updatedAt: Schema.Attribute.DateTime; updatedBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & Schema.Attribute.Private; }; } export interface ApiEventEvent extends Struct.CollectionTypeSchema { collectionName: 'events'; info: { description: ''; displayName: 'Event'; pluralName: 'events'; singularName: 'event'; }; options: { draftAndPublish: false; }; attributes: { choral: Schema.Attribute.Relation<'manyToOne', 'api::choral.choral'>; color: Schema.Attribute.String; comment: Schema.Attribute.Text; createdAt: Schema.Attribute.DateTime; createdBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & Schema.Attribute.Private; description: Schema.Attribute.Text; end: Schema.Attribute.DateTime; isPublic: Schema.Attribute.Boolean; locale: Schema.Attribute.String & Schema.Attribute.Private; localizations: Schema.Attribute.Relation<'oneToMany', 'api::event.event'> & Schema.Attribute.Private; location: Schema.Attribute.String; publishedAt: Schema.Attribute.DateTime; repertory: Schema.Attribute.Enumeration< [ 'sacred', 'classical', 'pop', 'gospel', 'traditional', 'jazz', 'world_music', 'not_specified', ] >; size: Schema.Attribute.Integer; start: Schema.Attribute.DateTime; tags: Schema.Attribute.Component<'social.tags', true>; title: Schema.Attribute.String; type: Schema.Attribute.Enumeration< [ 'concert', 'festival', 'trade show', 'symposium', 'competition', 'masterclass', 'vocal_workshop', 'conference', 'rehearsal', 'outings', ] >; updatedAt: Schema.Attribute.DateTime; updatedBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & Schema.Attribute.Private; }; } export interface ApiGroupMembershipGroupMembership extends Struct.CollectionTypeSchema { collectionName: 'group_memberships'; info: { description: ''; displayName: 'GroupMembership'; pluralName: 'group-memberships'; singularName: 'group-membership'; }; options: { draftAndPublish: false; }; attributes: { createdAt: Schema.Attribute.DateTime; createdBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & Schema.Attribute.Private; group: Schema.Attribute.Relation<'manyToOne', 'api::group.group'>; locale: Schema.Attribute.String & Schema.Attribute.Private; localizations: Schema.Attribute.Relation< 'oneToMany', 'api::group-membership.group-membership' > & Schema.Attribute.Private; publishedAt: Schema.Attribute.DateTime; role: Schema.Attribute.Enumeration< ['member', 'admin', 'owner', 'follow', 'pending', 'invited'] >; updatedAt: Schema.Attribute.DateTime; updatedBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & Schema.Attribute.Private; user: Schema.Attribute.Relation< 'manyToOne', 'plugin::users-permissions.user' >; }; } export interface ApiGroupGroup extends Struct.CollectionTypeSchema { collectionName: 'groups'; info: { description: ''; displayName: 'Group'; pluralName: 'groups'; singularName: 'group'; }; options: { draftAndPublish: false; }; attributes: { access: Schema.Attribute.Enumeration<['private', 'public', 'closed']>; activities: Schema.Attribute.Component<'group.activity', true>; banner: Schema.Attribute.Media<'images' | 'files' | 'videos' | 'audios'>; createdAt: Schema.Attribute.DateTime; createdBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & Schema.Attribute.Private; description: Schema.Attribute.Text; locale: Schema.Attribute.String & Schema.Attribute.Private; localizations: Schema.Attribute.Relation<'oneToMany', 'api::group.group'> & Schema.Attribute.Private; memberships: Schema.Attribute.Relation< 'oneToMany', 'api::group-membership.group-membership' >; name: Schema.Attribute.String; publishedAt: Schema.Attribute.DateTime; state: Schema.Attribute.Enumeration<['open', 'recruiting', 'audition']>; tags: Schema.Attribute.Component<'social.tags', true>; updatedAt: Schema.Attribute.DateTime; updatedBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & Schema.Attribute.Private; }; } export interface ApiInviteInvite extends Struct.CollectionTypeSchema { collectionName: 'invites'; info: { description: ''; displayName: 'Invite'; pluralName: 'invites'; singularName: 'invite'; }; options: { draftAndPublish: false; }; attributes: { createdAt: Schema.Attribute.DateTime; createdBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & Schema.Attribute.Private; description: Schema.Attribute.Text; invitedBy: Schema.Attribute.Relation< 'oneToOne', 'plugin::users-permissions.user' >; invitedDate: Schema.Attribute.DateTime; invitedUser: Schema.Attribute.Relation< 'oneToOne', 'plugin::users-permissions.user' >; locale: Schema.Attribute.String & Schema.Attribute.Private; localizations: Schema.Attribute.Relation< 'oneToMany', 'api::invite.invite' > & Schema.Attribute.Private; members: Schema.Attribute.Integer; name: Schema.Attribute.String; publishedAt: Schema.Attribute.DateTime; type: Schema.Attribute.Enumeration<['group', 'choral']>; updatedAt: Schema.Attribute.DateTime; updatedBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & Schema.Attribute.Private; }; } export interface ApiMessageMessage extends Struct.CollectionTypeSchema { collectionName: 'messages'; info: { description: ''; displayName: 'Message'; pluralName: 'messages'; singularName: 'message'; }; options: { draftAndPublish: false; }; attributes: { author: Schema.Attribute.Relation< 'oneToOne', 'plugin::users-permissions.user' >; channel: Schema.Attribute.Relation<'manyToOne', 'api::channel.channel'>; choral: Schema.Attribute.Relation<'oneToOne', 'api::choral.choral'>; content: Schema.Attribute.String; createdAt: Schema.Attribute.DateTime; createdBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & Schema.Attribute.Private; fileUrl: Schema.Attribute.String; locale: Schema.Attribute.String & Schema.Attribute.Private; localizations: Schema.Attribute.Relation< 'oneToMany', 'api::message.message' > & Schema.Attribute.Private; publishedAt: Schema.Attribute.DateTime; updatedAt: Schema.Attribute.DateTime; updatedBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & Schema.Attribute.Private; }; } export interface ApiNotificationNotification extends Struct.CollectionTypeSchema { collectionName: 'notifications'; info: { displayName: 'Notification'; pluralName: 'notifications'; singularName: 'notification'; }; options: { draftAndPublish: false; }; attributes: { createdAt: Schema.Attribute.DateTime; createdBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & Schema.Attribute.Private; locale: Schema.Attribute.String & Schema.Attribute.Private; localizations: Schema.Attribute.Relation< 'oneToMany', 'api::notification.notification' > & Schema.Attribute.Private; message: Schema.Attribute.String; payload: Schema.Attribute.JSON; publishedAt: Schema.Attribute.DateTime; read: Schema.Attribute.Boolean & Schema.Attribute.DefaultTo; source: Schema.Attribute.String; target_user: Schema.Attribute.Relation< 'oneToOne', 'plugin::users-permissions.user' >; title: Schema.Attribute.String; type: Schema.Attribute.Enumeration<['info', 'success', 'warning', 'error']>; updatedAt: Schema.Attribute.DateTime; updatedBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & Schema.Attribute.Private; }; } export interface ApiPermissionsTemplatePermissionsTemplate extends Struct.CollectionTypeSchema { collectionName: 'permissions_templates'; info: { description: ''; displayName: 'PermissionsTemplate'; pluralName: 'permissions-templates'; singularName: 'permissions-template'; }; options: { draftAndPublish: false; }; attributes: { choral: Schema.Attribute.Relation<'manyToOne', 'api::choral.choral'>; createdAt: Schema.Attribute.DateTime; createdBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & Schema.Attribute.Private; description: Schema.Attribute.String; locale: Schema.Attribute.String & Schema.Attribute.Private; localizations: Schema.Attribute.Relation< 'oneToMany', 'api::permissions-template.permissions-template' > & Schema.Attribute.Private; permissions: Schema.Attribute.Component<'user.permissions', true>; publishedAt: Schema.Attribute.DateTime; title: Schema.Attribute.String; updatedAt: Schema.Attribute.DateTime; updatedBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & Schema.Attribute.Private; }; } export interface ApiPostOwnershipPostOwnership extends Struct.CollectionTypeSchema { collectionName: 'post_ownerships'; info: { description: ''; displayName: 'PostOwnership'; pluralName: 'post-ownerships'; singularName: 'post-ownership'; }; options: { draftAndPublish: false; }; attributes: { author: Schema.Attribute.Relation< 'manyToOne', 'plugin::users-permissions.user' >; contextId: Schema.Attribute.Integer; contextType: Schema.Attribute.Enumeration< ['user', 'group', 'system', 'event'] >; createdAt: Schema.Attribute.DateTime; createdBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & Schema.Attribute.Private; isPublic: Schema.Attribute.Boolean & Schema.Attribute.DefaultTo; locale: Schema.Attribute.String & Schema.Attribute.Private; localizations: Schema.Attribute.Relation< 'oneToMany', 'api::post-ownership.post-ownership' > & Schema.Attribute.Private; metas: Schema.Attribute.JSON; post: Schema.Attribute.Relation<'manyToOne', 'api::post.post'>; publishedAt: Schema.Attribute.DateTime; relation: Schema.Attribute.Enumeration< ['owner', 'saved', 'hidden', 'link'] >; updatedAt: Schema.Attribute.DateTime; updatedBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & Schema.Attribute.Private; }; } export interface ApiPostPost extends Struct.CollectionTypeSchema { collectionName: 'posts'; info: { description: ''; displayName: 'Post'; pluralName: 'posts'; singularName: 'post'; }; options: { draftAndPublish: false; }; attributes: { category: Schema.Attribute.Enumeration<['photo', 'video', 'event']>; comments: Schema.Attribute.Relation<'oneToMany', 'api::comment.comment'>; content: Schema.Attribute.Text; createdAt: Schema.Attribute.DateTime; createdBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & Schema.Attribute.Private; imageUrl: Schema.Attribute.String; likes: Schema.Attribute.Relation< 'oneToMany', 'plugin::users-permissions.user' >; locale: Schema.Attribute.String & Schema.Attribute.Private; localizations: Schema.Attribute.Relation<'oneToMany', 'api::post.post'> & Schema.Attribute.Private; media: Schema.Attribute.Media< 'images' | 'files' | 'videos' | 'audios', true >; post_ownerships: Schema.Attribute.Relation< 'oneToMany', 'api::post-ownership.post-ownership' >; publishedAt: Schema.Attribute.DateTime; shares: Schema.Attribute.Integer; source: Schema.Attribute.String; taggedContacts: Schema.Attribute.Relation< 'oneToMany', 'plugin::users-permissions.user' >; title: Schema.Attribute.String; updatedAt: Schema.Attribute.DateTime; updatedBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & Schema.Attribute.Private; url: Schema.Attribute.String; }; } export interface ApiReportReport extends Struct.CollectionTypeSchema { collectionName: 'reports'; info: { description: ''; displayName: 'report'; pluralName: 'reports'; singularName: 'report'; }; options: { draftAndPublish: false; }; attributes: { createdAt: Schema.Attribute.DateTime; createdBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & Schema.Attribute.Private; details: Schema.Attribute.Text; locale: Schema.Attribute.String & Schema.Attribute.Private; localizations: Schema.Attribute.Relation< 'oneToMany', 'api::report.report' > & Schema.Attribute.Private; publishedAt: Schema.Attribute.DateTime; reason: Schema.Attribute.Enumeration< ['inappropriate', 'fraudulent', 'duplicate', 'expired', 'other'] >; reporter: Schema.Attribute.Relation< 'oneToOne', 'plugin::users-permissions.user' >; updatedAt: Schema.Attribute.DateTime; updatedBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & Schema.Attribute.Private; }; } export interface PluginContentReleasesRelease extends Struct.CollectionTypeSchema { collectionName: 'strapi_releases'; info: { displayName: 'Release'; pluralName: 'releases'; singularName: 'release'; }; options: { draftAndPublish: false; }; pluginOptions: { 'content-manager': { visible: false; }; 'content-type-builder': { visible: false; }; }; attributes: { actions: Schema.Attribute.Relation< 'oneToMany', 'plugin::content-releases.release-action' >; createdAt: Schema.Attribute.DateTime; createdBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & Schema.Attribute.Private; locale: Schema.Attribute.String & Schema.Attribute.Private; localizations: Schema.Attribute.Relation< 'oneToMany', 'plugin::content-releases.release' > & Schema.Attribute.Private; name: Schema.Attribute.String & Schema.Attribute.Required; publishedAt: Schema.Attribute.DateTime; releasedAt: Schema.Attribute.DateTime; scheduledAt: Schema.Attribute.DateTime; status: Schema.Attribute.Enumeration< ['ready', 'blocked', 'failed', 'done', 'empty'] > & Schema.Attribute.Required; timezone: Schema.Attribute.String; updatedAt: Schema.Attribute.DateTime; updatedBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & Schema.Attribute.Private; }; } export interface PluginContentReleasesReleaseAction extends Struct.CollectionTypeSchema { collectionName: 'strapi_release_actions'; info: { displayName: 'Release Action'; pluralName: 'release-actions'; singularName: 'release-action'; }; options: { draftAndPublish: false; }; pluginOptions: { 'content-manager': { visible: false; }; 'content-type-builder': { visible: false; }; }; attributes: { contentType: Schema.Attribute.String & Schema.Attribute.Required; createdAt: Schema.Attribute.DateTime; createdBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & Schema.Attribute.Private; entryDocumentId: Schema.Attribute.String; isEntryValid: Schema.Attribute.Boolean; locale: Schema.Attribute.String & Schema.Attribute.Private; localizations: Schema.Attribute.Relation< 'oneToMany', 'plugin::content-releases.release-action' > & Schema.Attribute.Private; publishedAt: Schema.Attribute.DateTime; release: Schema.Attribute.Relation< 'manyToOne', 'plugin::content-releases.release' >; type: Schema.Attribute.Enumeration<['publish', 'unpublish']> & Schema.Attribute.Required; updatedAt: Schema.Attribute.DateTime; updatedBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & Schema.Attribute.Private; }; } export interface PluginI18NLocale extends Struct.CollectionTypeSchema { collectionName: 'i18n_locale'; info: { collectionName: 'locales'; description: ''; displayName: 'Locale'; pluralName: 'locales'; singularName: 'locale'; }; options: { draftAndPublish: false; }; pluginOptions: { 'content-manager': { visible: false; }; 'content-type-builder': { visible: false; }; }; attributes: { code: Schema.Attribute.String & Schema.Attribute.Unique; createdAt: Schema.Attribute.DateTime; createdBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & Schema.Attribute.Private; locale: Schema.Attribute.String & Schema.Attribute.Private; localizations: Schema.Attribute.Relation< 'oneToMany', 'plugin::i18n.locale' > & Schema.Attribute.Private; name: Schema.Attribute.String & Schema.Attribute.SetMinMax< { max: 50; min: 1; }, number >; publishedAt: Schema.Attribute.DateTime; updatedAt: Schema.Attribute.DateTime; updatedBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & Schema.Attribute.Private; }; } export interface PluginReviewWorkflowsWorkflow extends Struct.CollectionTypeSchema { collectionName: 'strapi_workflows'; info: { description: ''; displayName: 'Workflow'; name: 'Workflow'; pluralName: 'workflows'; singularName: 'workflow'; }; options: { draftAndPublish: false; }; pluginOptions: { 'content-manager': { visible: false; }; 'content-type-builder': { visible: false; }; }; attributes: { contentTypes: Schema.Attribute.JSON & Schema.Attribute.Required & Schema.Attribute.DefaultTo<'[]'>; createdAt: Schema.Attribute.DateTime; createdBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & Schema.Attribute.Private; locale: Schema.Attribute.String & Schema.Attribute.Private; localizations: Schema.Attribute.Relation< 'oneToMany', 'plugin::review-workflows.workflow' > & Schema.Attribute.Private; name: Schema.Attribute.String & Schema.Attribute.Required & Schema.Attribute.Unique; publishedAt: Schema.Attribute.DateTime; stageRequiredToPublish: Schema.Attribute.Relation< 'oneToOne', 'plugin::review-workflows.workflow-stage' >; stages: Schema.Attribute.Relation< 'oneToMany', 'plugin::review-workflows.workflow-stage' >; updatedAt: Schema.Attribute.DateTime; updatedBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & Schema.Attribute.Private; }; } export interface PluginReviewWorkflowsWorkflowStage extends Struct.CollectionTypeSchema { collectionName: 'strapi_workflows_stages'; info: { description: ''; displayName: 'Stages'; name: 'Workflow Stage'; pluralName: 'workflow-stages'; singularName: 'workflow-stage'; }; options: { draftAndPublish: false; version: '1.1.0'; }; pluginOptions: { 'content-manager': { visible: false; }; 'content-type-builder': { visible: false; }; }; attributes: { color: Schema.Attribute.String & Schema.Attribute.DefaultTo<'#4945FF'>; createdAt: Schema.Attribute.DateTime; createdBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & Schema.Attribute.Private; locale: Schema.Attribute.String & Schema.Attribute.Private; localizations: Schema.Attribute.Relation< 'oneToMany', 'plugin::review-workflows.workflow-stage' > & Schema.Attribute.Private; name: Schema.Attribute.String; permissions: Schema.Attribute.Relation<'manyToMany', 'admin::permission'>; publishedAt: Schema.Attribute.DateTime; updatedAt: Schema.Attribute.DateTime; updatedBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & Schema.Attribute.Private; workflow: Schema.Attribute.Relation< 'manyToOne', 'plugin::review-workflows.workflow' >; }; } export interface PluginUploadFile extends Struct.CollectionTypeSchema { collectionName: 'files'; info: { description: ''; displayName: 'File'; pluralName: 'files'; singularName: 'file'; }; options: { draftAndPublish: false; }; pluginOptions: { 'content-manager': { visible: false; }; 'content-type-builder': { visible: false; }; }; attributes: { alternativeText: Schema.Attribute.String; caption: Schema.Attribute.String; createdAt: Schema.Attribute.DateTime; createdBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & Schema.Attribute.Private; ext: Schema.Attribute.String; folder: Schema.Attribute.Relation<'manyToOne', 'plugin::upload.folder'> & Schema.Attribute.Private; folderPath: Schema.Attribute.String & Schema.Attribute.Required & Schema.Attribute.Private & Schema.Attribute.SetMinMaxLength<{ minLength: 1; }>; formats: Schema.Attribute.JSON; hash: Schema.Attribute.String & Schema.Attribute.Required; height: Schema.Attribute.Integer; locale: Schema.Attribute.String & Schema.Attribute.Private; localizations: Schema.Attribute.Relation< 'oneToMany', 'plugin::upload.file' > & Schema.Attribute.Private; mime: Schema.Attribute.String & Schema.Attribute.Required; name: Schema.Attribute.String & Schema.Attribute.Required; previewUrl: Schema.Attribute.String; provider: Schema.Attribute.String & Schema.Attribute.Required; provider_metadata: Schema.Attribute.JSON; publishedAt: Schema.Attribute.DateTime; related: Schema.Attribute.Relation<'morphToMany'>; size: Schema.Attribute.Decimal & Schema.Attribute.Required; updatedAt: Schema.Attribute.DateTime; updatedBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & Schema.Attribute.Private; url: Schema.Attribute.String & Schema.Attribute.Required; width: Schema.Attribute.Integer; }; } export interface PluginUploadFolder extends Struct.CollectionTypeSchema { collectionName: 'upload_folders'; info: { displayName: 'Folder'; pluralName: 'folders'; singularName: 'folder'; }; options: { draftAndPublish: false; }; pluginOptions: { 'content-manager': { visible: false; }; 'content-type-builder': { visible: false; }; }; attributes: { children: Schema.Attribute.Relation<'oneToMany', 'plugin::upload.folder'>; createdAt: Schema.Attribute.DateTime; createdBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & Schema.Attribute.Private; files: Schema.Attribute.Relation<'oneToMany', 'plugin::upload.file'>; locale: Schema.Attribute.String & Schema.Attribute.Private; localizations: Schema.Attribute.Relation< 'oneToMany', 'plugin::upload.folder' > & Schema.Attribute.Private; name: Schema.Attribute.String & Schema.Attribute.Required & Schema.Attribute.SetMinMaxLength<{ minLength: 1; }>; parent: Schema.Attribute.Relation<'manyToOne', 'plugin::upload.folder'>; path: Schema.Attribute.String & Schema.Attribute.Required & Schema.Attribute.SetMinMaxLength<{ minLength: 1; }>; pathId: Schema.Attribute.Integer & Schema.Attribute.Required & Schema.Attribute.Unique; publishedAt: Schema.Attribute.DateTime; updatedAt: Schema.Attribute.DateTime; updatedBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & Schema.Attribute.Private; }; } export interface PluginUsersPermissionsPermission extends Struct.CollectionTypeSchema { collectionName: 'up_permissions'; info: { description: ''; displayName: 'Permission'; name: 'permission'; pluralName: 'permissions'; singularName: 'permission'; }; options: { draftAndPublish: false; }; pluginOptions: { 'content-manager': { visible: false; }; 'content-type-builder': { visible: false; }; }; attributes: { action: Schema.Attribute.String & Schema.Attribute.Required; createdAt: Schema.Attribute.DateTime; createdBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & Schema.Attribute.Private; locale: Schema.Attribute.String & Schema.Attribute.Private; localizations: Schema.Attribute.Relation< 'oneToMany', 'plugin::users-permissions.permission' > & Schema.Attribute.Private; publishedAt: Schema.Attribute.DateTime; role: Schema.Attribute.Relation< 'manyToOne', 'plugin::users-permissions.role' >; updatedAt: Schema.Attribute.DateTime; updatedBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & Schema.Attribute.Private; }; } export interface PluginUsersPermissionsRole extends Struct.CollectionTypeSchema { collectionName: 'up_roles'; info: { description: ''; displayName: 'Role'; name: 'role'; pluralName: 'roles'; singularName: 'role'; }; options: { draftAndPublish: false; }; pluginOptions: { 'content-manager': { visible: false; }; 'content-type-builder': { visible: false; }; }; attributes: { createdAt: Schema.Attribute.DateTime; createdBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & Schema.Attribute.Private; description: Schema.Attribute.String; locale: Schema.Attribute.String & Schema.Attribute.Private; localizations: Schema.Attribute.Relation< 'oneToMany', 'plugin::users-permissions.role' > & Schema.Attribute.Private; name: Schema.Attribute.String & Schema.Attribute.Required & Schema.Attribute.SetMinMaxLength<{ minLength: 3; }>; permissions: Schema.Attribute.Relation< 'oneToMany', 'plugin::users-permissions.permission' >; publishedAt: Schema.Attribute.DateTime; type: Schema.Attribute.String & Schema.Attribute.Unique; updatedAt: Schema.Attribute.DateTime; updatedBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & Schema.Attribute.Private; users: Schema.Attribute.Relation< 'oneToMany', 'plugin::users-permissions.user' >; }; } export interface PluginUsersPermissionsUser extends Struct.CollectionTypeSchema { collectionName: 'up_users'; info: { description: ''; displayName: 'User'; name: 'user'; pluralName: 'users'; singularName: 'user'; }; options: { draftAndPublish: false; }; attributes: { address: Schema.Attribute.Text; announcements: Schema.Attribute.Relation< 'oneToMany', 'api::announcement.announcement' >; avatar: Schema.Attribute.Media<'images'>; background: Schema.Attribute.Media< 'images' | 'files' | 'videos' | 'audios' >; blocked: Schema.Attribute.Boolean & Schema.Attribute.DefaultTo; board: Schema.Attribute.Relation<'oneToOne', 'api::board.board'>; choral_memberships: Schema.Attribute.Relation< 'oneToMany', 'api::choral-membership.choral-membership' >; choral_permissions: Schema.Attribute.Relation< 'oneToMany', 'api::choral-permission.choral-permission' >; choralAdmin: Schema.Attribute.Relation<'manyToMany', 'api::choral.choral'>; choralOwner: Schema.Attribute.Relation<'oneToOne', 'api::choral.choral'>; chorals: Schema.Attribute.Relation<'manyToMany', 'api::choral.choral'>; confirmationToken: Schema.Attribute.String & Schema.Attribute.Private; confirmed: Schema.Attribute.Boolean & Schema.Attribute.DefaultTo; contact_metas: Schema.Attribute.Relation< 'oneToMany', 'api::contact-meta.contact-meta' >; contacts: Schema.Attribute.Relation<'oneToMany', 'api::contact.contact'>; createdAt: Schema.Attribute.DateTime; createdBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & Schema.Attribute.Private; dob: Schema.Attribute.Date; email: Schema.Attribute.Email & Schema.Attribute.Required & Schema.Attribute.SetMinMaxLength<{ minLength: 6; }>; friends: Schema.Attribute.Relation< 'oneToMany', 'plugin::users-permissions.user' >; gender: Schema.Attribute.Enumeration<['men', 'women', 'none']>; group_memberships: Schema.Attribute.Relation< 'oneToMany', 'api::group-membership.group-membership' >; job: Schema.Attribute.Enumeration< ['choir_director', 'choir_addict', 'choir_master', 'choir_singer', 'none'] >; locale: Schema.Attribute.String & Schema.Attribute.Private; localizations: Schema.Attribute.Relation< 'oneToMany', 'plugin::users-permissions.user' > & Schema.Attribute.Private; name: Schema.Attribute.String; nbFollowers: Schema.Attribute.Integer & Schema.Attribute.DefaultTo<0>; nbFollowing: Schema.Attribute.Integer & Schema.Attribute.DefaultTo<0>; nbPosts: Schema.Attribute.Integer & Schema.Attribute.DefaultTo<0>; nbSaved: Schema.Attribute.Integer & Schema.Attribute.DefaultTo<0>; password: Schema.Attribute.Password & Schema.Attribute.Private & Schema.Attribute.SetMinMaxLength<{ minLength: 6; }>; phone: Schema.Attribute.String; post_ownerships: Schema.Attribute.Relation< 'oneToMany', 'api::post-ownership.post-ownership' >; provider: Schema.Attribute.String; publishedAt: Schema.Attribute.DateTime; related_contacts: Schema.Attribute.Relation< 'oneToMany', 'api::contact.contact' >; resetPasswordToken: Schema.Attribute.String & Schema.Attribute.Private; role: Schema.Attribute.Relation< 'manyToOne', 'plugin::users-permissions.role' >; saved_posts: Schema.Attribute.Relation<'oneToMany', 'api::post.post'>; surname: Schema.Attribute.String; updatedAt: Schema.Attribute.DateTime; updatedBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & Schema.Attribute.Private; username: Schema.Attribute.String & Schema.Attribute.Required & Schema.Attribute.Unique & Schema.Attribute.SetMinMaxLength<{ minLength: 3; }>; voice: Schema.Attribute.Enumeration< ['soprano', 'mezzo-soprano', 'alto', 'tenor', 'baryton', 'basse'] >; }; } declare module '@strapi/strapi' { export module Public { export interface ContentTypeSchemas { 'admin::api-token': AdminApiToken; 'admin::api-token-permission': AdminApiTokenPermission; 'admin::permission': AdminPermission; 'admin::role': AdminRole; 'admin::transfer-token': AdminTransferToken; 'admin::transfer-token-permission': AdminTransferTokenPermission; 'admin::user': AdminUser; 'api::ad.ad': ApiAdAd; 'api::announcement.announcement': ApiAnnouncementAnnouncement; 'api::board-card.board-card': ApiBoardCardBoardCard; 'api::board-list.board-list': ApiBoardListBoardList; 'api::board.board': ApiBoardBoard; 'api::channel.channel': ApiChannelChannel; 'api::choral-membership.choral-membership': ApiChoralMembershipChoralMembership; 'api::choral-permission.choral-permission': ApiChoralPermissionChoralPermission; 'api::choral.choral': ApiChoralChoral; 'api::comment.comment': ApiCommentComment; 'api::contact-meta.contact-meta': ApiContactMetaContactMeta; 'api::contact.contact': ApiContactContact; 'api::conversation.conversation': ApiConversationConversation; 'api::direct-message.direct-message': ApiDirectMessageDirectMessage; 'api::event-relationship.event-relationship': ApiEventRelationshipEventRelationship; 'api::event.event': ApiEventEvent; 'api::group-membership.group-membership': ApiGroupMembershipGroupMembership; 'api::group.group': ApiGroupGroup; 'api::invite.invite': ApiInviteInvite; 'api::message.message': ApiMessageMessage; 'api::notification.notification': ApiNotificationNotification; 'api::permissions-template.permissions-template': ApiPermissionsTemplatePermissionsTemplate; 'api::post-ownership.post-ownership': ApiPostOwnershipPostOwnership; 'api::post.post': ApiPostPost; 'api::report.report': ApiReportReport; 'plugin::content-releases.release': PluginContentReleasesRelease; 'plugin::content-releases.release-action': PluginContentReleasesReleaseAction; 'plugin::i18n.locale': PluginI18NLocale; 'plugin::review-workflows.workflow': PluginReviewWorkflowsWorkflow; 'plugin::review-workflows.workflow-stage': PluginReviewWorkflowsWorkflowStage; 'plugin::upload.file': PluginUploadFile; 'plugin::upload.folder': PluginUploadFolder; 'plugin::users-permissions.permission': PluginUsersPermissionsPermission; 'plugin::users-permissions.role': PluginUsersPermissionsRole; 'plugin::users-permissions.user': PluginUsersPermissionsUser; } } }