@amityco/ts-sdk-react-native
Version:
Amity Social Cloud Typescript SDK
122 lines • 4.99 kB
TypeScript
export {};
export declare enum AmityEventType {
Virtual = "virtual",
InPerson = "in_person"
}
export declare enum AmityEventOriginType {
Community = "community",
User = "user"
}
export declare enum AmityEventStatus {
Scheduled = "scheduled",
Live = "live",
Ended = "ended",
Cancelled = "cancelled"
}
export declare enum AmityEventResponseStatus {
Going = "going",
NotGoing = "not_going"
}
export declare enum AmityEventSortOption {
StartTime = "startTime",
CreatedAt = "createdAt"
}
export declare enum AmityEventOrderOption {
Ascending = "asc",
Descending = "desc"
}
declare global {
namespace Amity {
type EventType = AmityEventType;
type EventOriginType = AmityEventOriginType;
type EventStatus = AmityEventStatus;
type EventResponseStatus = AmityEventResponseStatus;
type EventSortOption = AmityEventSortOption;
type EventOrderOption = AmityEventOrderOption;
type EventMetadata = {
timezone: string;
};
type EventLinkObject = {
post?: Amity.Post;
room?: Amity.Room;
creator?: Amity.User;
coverImage?: Amity.File<'image'>;
targetCommunity?: Amity.Community;
createRSVP: (status: Amity.EventResponseStatus) => Promise<Amity.EventResponse | undefined>;
updateRSVP: (status: Amity.EventResponseStatus) => Promise<Amity.EventResponse | undefined>;
getMyRSVP: () => Promise<Amity.EventResponse | undefined>;
getRSVPs: (params: Omit<Amity.QueryRSVPs, 'eventId'>, callback: Amity.LiveCollectionCallback<Amity.EventResponse>) => Amity.Unsubscriber;
};
type RawEvent = {
eventId: string;
publicId: string;
userId: string;
userPublicId: string;
userInternalId: string;
coverImageFileId?: string;
title: string;
description: string;
type: Amity.EventType;
status: Amity.EventStatus;
startTime: string;
endTime: string;
originId: string;
originType: Amity.EventOriginType;
discussionCommunityId?: string;
rsvpCount: number;
interestedCount: number;
location?: string;
externalUrl?: string;
isOriginPublic: boolean;
postId: string;
} & Amity.Taggable & Amity.Metadata<Amity.EventMetadata> & Amity.Timestamps & Amity.SoftDelete;
type RawEventResponse = {
eventId: string;
userId: string;
createdAt: Amity.Timestamps['createdAt'];
respondedAt: Amity.Timestamps;
status: AmityEventResponseStatus;
userInternalId: string;
userPublicId: string;
};
type InternalEventResponse = RawEventResponse;
type EventResponseLinkObject = {
event?: Amity.InternalEvent;
user?: Amity.InternalUser;
};
type InternalEvent = RawEvent;
type Event = Amity.InternalEvent & Amity.EventLinkObject;
type EventResponse = Amity.InternalEventResponse & Amity.EventResponseLinkObject;
type QueryEvents = {
userId?: string;
originId?: string;
onlyAttendee?: boolean;
type?: Amity.EventType;
status?: Amity.EventStatus;
originType?: Amity.EventOriginType;
sortBy?: Amity.EventSortOption;
orderBy?: Amity.EventOrderOption;
};
type EventLiveCollection = Amity.LiveCollectionParams<Amity.QueryEvents>;
type EventLiveCollectionCache = Amity.LiveCollectionCache<Amity.InternalEvent['eventId'], Amity.QueryEvents>;
type QueryRSVPs = {
status: Amity.EventResponseStatus;
eventId: string;
options?: {
limit?: number;
token?: string;
};
page?: string;
};
type QueryMyEvents = {
status: Amity.EventResponseStatus;
};
type MyEventLiveCollection = Amity.LiveCollectionParams<Amity.QueryMyEvents>;
type MyEventLiveCollectionCache = Amity.LiveCollectionCache<Amity.InternalEvent['eventId'], Amity.QueryMyEvents>;
type RSVPLiveCollectionCache = Amity.LiveCollectionCache<Amity.InternalEventResponse['userId'], Amity.QueryRSVPs>;
type RSVPLiveCollection = Amity.LiveCollectionParams<Amity.QueryRSVPs>;
type EventCreateOptions = Pick<Amity.Event, 'coverImageFileId' | 'title' | 'description' | 'type' | 'startTime' | 'endTime' | 'originType' | 'originId' | 'location' | 'externalUrl' | 'tags' | 'metadata'>;
type EventUpdateOptions = Partial<Pick<Amity.Event, 'coverImageFileId' | 'title' | 'description' | 'type' | 'startTime' | 'endTime' | 'location' | 'externalUrl' | 'tags' | 'metadata'>>;
}
}
//# sourceMappingURL=event.d.ts.map