@signalwire/js
Version:
71 lines • 2.57 kB
TypeScript
import { Conversation } from '../Conversation';
import { Address } from './address';
import { HTTPClientContract } from './httpClient';
import { WSClientContract, WSClientOptions } from './wsClient';
export interface SignalWireClientParams extends WSClientOptions {
}
export interface SignalWireContract extends WSClientContract, Omit<HTTPClientContract, 'getAddresses' | 'getAddress'> {
address: Pick<HTTPClientContract, 'getAddresses' | 'getAddress'>;
conversation: {
getConversations: Conversation['getConversations'];
getMessages: Conversation['getMessages'];
getConversationMessages: Conversation['getConversationMessages'];
subscribe: Conversation['subscribe'];
sendMessage: Conversation['sendMessage'];
join: Conversation['joinConversation'];
};
chat: {
getMessages: Conversation['getChatMessages'];
subscribe: Conversation['subscribeChatMessages'];
sendMessage: Conversation['sendMessage'];
join: Conversation['joinConversation'];
};
}
export type SignalWireClient = SignalWireContract;
export interface PaginatedResponse<T> {
data: Array<T>;
links: {
first?: string;
self?: string;
next?: string;
prev?: string;
};
}
export interface PaginatedResult<T> {
data: Array<T>;
self(): Promise<PaginatedResult<T> | undefined>;
nextPage(): Promise<PaginatedResult<T> | undefined>;
prevPage(): Promise<PaginatedResult<T> | undefined>;
firstPage(): Promise<PaginatedResult<T> | undefined>;
hasNext: boolean;
hasPrev: boolean;
}
export interface GetSubscriberInfoResponse {
id: string;
email: string;
first_name?: string;
last_name?: string;
display_name?: string;
job_title?: string;
time_zone?: number;
country?: string;
region?: string;
company_name?: string;
push_notification_key: string;
app_settings?: {
display_name: string;
scopes: string[];
};
fabric_addresses: Address[];
}
export type GetSubscriberInfoResult = GetSubscriberInfoResponse;
export * from './capabilities';
export * from './address';
export * from './conversation';
export * from './device';
export * from './httpClient';
export * from './incomingCallManager';
export * from './wsClient';
export { FabricRoomSession } from '../FabricRoomSession';
export type { ConversationMessageEventName, ConversationMessageEventParams, ConversationMessageEvent, ConversationEvent, ConversationEventParams, } from '@signalwire/core';
//# sourceMappingURL=index.d.ts.map