import { EthAddress } from '../../misc'; import { JSONSchema, ValidateFunction } from '../../validation'; import { BaseEvent, Events } from './base'; type Audience = { addressesToNotify: EthAddress[]; }; export type CommunityDeletedEvent = BaseEvent & { type: Events.Type.COMMUNITY; subType: Events.SubType.Community.DELETED; metadata: { id: string; name: string; memberAddresses: EthAddress[]; thumbnailUrl: string; }; }; export declare namespace CommunityDeletedEvent { const schema: JSONSchema; const validate: ValidateFunction; } export type CommunityDeletedContentViolationEvent = BaseEvent & { type: Events.Type.COMMUNITY; subType: Events.SubType.Community.DELETED_CONTENT_VIOLATION; metadata: { id: string; name: string; ownerAddress: EthAddress; thumbnailUrl: string; }; }; export declare namespace CommunityDeletedContentViolationEvent { const schema: JSONSchema; const validate: ValidateFunction; } export type CommunityRenamedEvent = BaseEvent & { type: Events.Type.COMMUNITY; subType: Events.SubType.Community.RENAMED; metadata: { id: string; oldName: string; newName: string; memberAddresses: EthAddress[]; thumbnailUrl: string; }; }; export declare namespace CommunityRenamedEvent { const schema: JSONSchema; const validate: ValidateFunction; } export type CommunityMemberBannedEvent = BaseEvent & { type: Events.Type.COMMUNITY; subType: Events.SubType.Community.MEMBER_BANNED; metadata: { id: string; name: string; memberAddress: EthAddress; thumbnailUrl: string; }; }; export declare namespace CommunityMemberBannedEvent { const schema: JSONSchema; const validate: ValidateFunction; } export type CommunityMemberLeftEvent = BaseEvent & { type: Events.Type.COMMUNITY; subType: Events.SubType.Community.MEMBER_LEFT; metadata: { id: string; memberAddress: EthAddress; }; }; export declare namespace CommunityMemberLeftEvent { const schema: JSONSchema; const validate: ValidateFunction; } export type CommunityMemberRemovedEvent = BaseEvent & { type: Events.Type.COMMUNITY; subType: Events.SubType.Community.MEMBER_REMOVED; metadata: { id: string; name: string; memberAddress: EthAddress; thumbnailUrl: string; }; }; export declare namespace CommunityMemberRemovedEvent { const schema: JSONSchema; const validate: ValidateFunction; } export type CommunityRequestToJoinReceivedEvent = BaseEvent & { type: Events.Type.COMMUNITY; subType: Events.SubType.Community.REQUEST_TO_JOIN_RECEIVED; metadata: Audience & { communityId: string; communityName: string; memberAddress: EthAddress; memberName: string; thumbnailUrl: string; }; }; export declare namespace CommunityRequestToJoinReceivedEvent { const schema: JSONSchema; const validate: ValidateFunction; } export type CommunityRequestToJoinAcceptedEvent = BaseEvent & { type: Events.Type.COMMUNITY; subType: Events.SubType.Community.REQUEST_TO_JOIN_ACCEPTED; metadata: { communityId: string; communityName: string; memberAddress: EthAddress; thumbnailUrl: string; }; }; export declare namespace CommunityRequestToJoinAcceptedEvent { const schema: JSONSchema; const validate: ValidateFunction; } export type CommunityInviteReceivedEvent = BaseEvent & { type: Events.Type.COMMUNITY; subType: Events.SubType.Community.INVITE_RECEIVED; metadata: { communityId: string; communityName: string; memberAddress: EthAddress; thumbnailUrl: string; }; }; export declare namespace CommunityInviteReceivedEvent { const schema: JSONSchema; const validate: ValidateFunction; } export type CommunityPostAddedEvent = BaseEvent & { type: Events.Type.COMMUNITY; subType: Events.SubType.Community.POST_ADDED; metadata: Audience & { communityId: string; communityName: string; thumbnailUrl: string; postId: string; authorAddress: EthAddress; }; }; export declare namespace CommunityPostAddedEvent { const schema: JSONSchema; const validate: ValidateFunction; } export type CommunityOwnershipTransferredEvent = BaseEvent & { type: Events.Type.COMMUNITY; subType: Events.SubType.Community.OWNERSHIP_TRANSFERRED; metadata: { communityId: string; communityName: string; oldOwnerAddress: EthAddress; newOwnerAddress: EthAddress; thumbnailUrl: string; }; }; export declare namespace CommunityOwnershipTransferredEvent { const schema: JSONSchema; const validate: ValidateFunction; } export type CommunityVoiceChatStartedEvent = BaseEvent & { type: Events.Type.COMMUNITY; subType: Events.SubType.Community.VOICE_CHAT_STARTED; metadata: Audience & { communityId: string; communityName: string; thumbnailUrl: string; }; }; export declare namespace CommunityVoiceChatStartedEvent { const schema: JSONSchema; const validate: ValidateFunction; } export {}; //# sourceMappingURL=communities.d.ts.map