magicbell
Version:
MagicBell API wrapper
67 lines (66 loc) • 3.05 kB
TypeScript
import { type FromSchema } from 'json-schema-to-ts';
import { type IterablePromise } from '../client/method.js';
import { Resource } from '../client/resource.js';
import { type RequestOptions } from '../client/types.js';
import * as schemas from '../schemas/subscriptions.js';
type CreateSubscriptionsResponse = FromSchema<typeof schemas.CreateSubscriptionsResponseSchema>;
type CreateSubscriptionsPayload = FromSchema<typeof schemas.CreateSubscriptionsPayloadSchema>;
type UnsubscribeSubscriptionsResponse = FromSchema<typeof schemas.UnsubscribeSubscriptionsResponseSchema>;
type UnsubscribeSubscriptionsPayload = FromSchema<typeof schemas.UnsubscribeSubscriptionsPayloadSchema>;
type ListSubscriptionsResponse = FromSchema<typeof schemas.ListSubscriptionsResponseSchema>;
type GetSubscriptionsResponse = FromSchema<typeof schemas.GetSubscriptionsResponseSchema>;
type DeleteSubscriptionsPayload = FromSchema<typeof schemas.DeleteSubscriptionsPayloadSchema>;
export declare class Subscriptions extends Resource {
path: string;
entity: string;
/**
* Set a user's subscription status to subscribed for a particular topic (and
* optional categories). If the user previously unsubscribed, the user will be
* resubscribed.
*
* @param data
* @param options - override client request options.
* @returns
**/
create(data: CreateSubscriptionsPayload, options?: RequestOptions): Promise<CreateSubscriptionsResponse>;
/**
* Unusbscribe a user from a particular topic (and optional categories).
*
* @param topic - The topic for which we'd like to filter topic subscriptions.
* @param data
* @param options - override client request options.
* @returns
**/
unsubscribe(topic: string, data: UnsubscribeSubscriptionsPayload, options?: RequestOptions): Promise<UnsubscribeSubscriptionsResponse>;
/**
* Fetch a user's topic subscriptions.
*
* @param options - override client request options.
* @returns
**/
list(options?: RequestOptions): IterablePromise<ListSubscriptionsResponse>;
/**
* Show a user's subscription status for a particular topic and categories.
*
* @param topic - The topic for which we'd like to filter topic subscriptions.
* @param options - override client request options.
* @returns
**/
get(topic: string, options?: RequestOptions): Promise<GetSubscriptionsResponse>;
/**
* Delete topic subscription(s)
*
* @param topic - The topic for which we'd like to filter topic subscriptions.
* @param options - override client request options.
**/
delete(topic: string, options?: RequestOptions): Promise<void>;
/**
* Delete topic subscription(s)
*
* @param topic - The topic for which we'd like to filter topic subscriptions.
* @param data
* @param options - override client request options.
**/
delete(topic: string, data: DeleteSubscriptionsPayload, options?: RequestOptions): Promise<void>;
}
export {};