44 lines
985 B
TypeScript
44 lines
985 B
TypeScript
import { Subscription } from './subscription.model';
|
|
|
|
export interface Channel {
|
|
channel_id: string;
|
|
owner_user_id: string;
|
|
internal_name: string;
|
|
display_name: string;
|
|
description_name: string | null;
|
|
subscribe_key?: string;
|
|
send_key?: string;
|
|
timestamp_created: string;
|
|
timestamp_lastsent: string | null;
|
|
messages_sent: number;
|
|
}
|
|
|
|
export interface ChannelWithSubscription extends Channel {
|
|
subscription: Subscription | null;
|
|
}
|
|
|
|
export interface ChannelPreview {
|
|
channel_id: string;
|
|
owner_user_id: string;
|
|
internal_name: string;
|
|
display_name: string;
|
|
}
|
|
|
|
export type ChannelSelector = 'owned' | 'subscribed' | 'all' | 'subscribed_any' | 'all_any';
|
|
|
|
export interface CreateChannelRequest {
|
|
name: string;
|
|
subscribe?: boolean;
|
|
}
|
|
|
|
export interface UpdateChannelRequest {
|
|
display_name?: string;
|
|
description_name?: string;
|
|
subscribe_key?: string;
|
|
send_key?: string;
|
|
}
|
|
|
|
export interface ChannelListResponse {
|
|
channels: ChannelWithSubscription[];
|
|
}
|