import type { api_List } from '../models/api_List'; import type { messagechannel_CreateMessageChannelRequest } from '../models/messagechannel_CreateMessageChannelRequest'; import type { messagechannel_MessageChannel } from '../models/messagechannel_MessageChannel'; import type { messagechannel_UnreadSummary } from '../models/messagechannel_UnreadSummary'; import type { CancelablePromise } from '../core/CancelablePromise'; export declare class MessageChannelsService { /** * Get a list of Message Channels * * Returns a paginated list of message channels the requester is a member * of, optionally filtered by membership and enriched with unread state. * * @param clientId Filter by client id. Alias for membershipEntityId. * @param membershipEntityId Filter by the entity (company or client) the channel is scoped to. * @param companyId Filter to channels scoped to this company. Combine with clientId to fetch the individual channel for a specific client/company pair. * @param memberId Filter to channels containing this member id, and use it as the viewer for includeUnread enrichment. * @param membershipType Filter by channel membership type. * @param includeUnread Enrich each channel with unreadCount and lastRead for the viewer. * @param limit Maximum number of records to return. Capped at 100. * @param nextToken Pagination cursor returned by a previous request. * * @example * await assembly.listMessageChannels(); */ static listMessageChannels({ clientId, membershipEntityId, companyId, memberId, membershipType, includeUnread, limit, nextToken, }: { /** * Filter by client id. Alias for membershipEntityId. */ clientId?: string; /** * Filter by the entity (company or client) the channel is scoped to. */ membershipEntityId?: string; /** * Filter to channels scoped to this company. Combine with clientId to fetch the individual channel for a specific client/company pair. */ companyId?: string; /** * Filter to channels containing this member id, and use it as the viewer for includeUnread enrichment. */ memberId?: string; /** * Filter by channel membership type. */ membershipType?: 'company' | 'individual' | 'group'; /** * Enrich each channel with unreadCount and lastRead for the viewer. */ includeUnread?: boolean; /** * Maximum number of records to return. Capped at 100. */ limit?: number; /** * Pagination cursor returned by a previous request. */ nextToken?: string; }): CancelablePromise; /** * Create Message Channel * * Creates a message channel. Required fields depend on membershipType: * company channels need membershipEntityId or companyId; individual * channels need membershipEntityId or clientId; group channels need * memberIds. * * @example * await assembly.createMessageChannel({ requestBody: ... }); */ static createMessageChannel({ requestBody, }: { /** * Message channel to create */ requestBody: messagechannel_CreateMessageChannelRequest; }): CancelablePromise; /** * Get unread message channels for a user * * Returns the messaging channels where the specified user has unread * messages, plus an aggregate total. When userId is omitted, the * requester's own user is used. * * @param userId Internal user or client id whose unread channels to summarize. Defaults to the requester's user id. * * @example * await assembly.listUnreadMessageChannels(); */ static listUnreadMessageChannels({ userId, }: { /** * Internal user or client id whose unread channels to summarize. Defaults to the requester's user id. */ userId?: string; }): CancelablePromise; /** * Get Message Channel by id * * Returns a single message channel by id. The requester must be a member of * the channel. * * @param id ID of the message channel to retrieve * * @example * await assembly.retrieveMessageChannel({ id: ... }); */ static retrieveMessageChannel({ id, }: { /** * ID of the message channel to retrieve */ id: string; }): CancelablePromise; }