polyv-live-cli
Version:
CLI tool for managing PolyV live streaming services.
81 lines • 2.76 kB
TypeScript
import { BaseHandler, OutputFormat } from './base.handler';
import { AuthConfig } from '../types/auth';
export interface CouponAddOptions {
name: string;
type: 'MAX_OUT' | 'DISCOUNT';
availableAmount: number;
receiveStart: number;
receiveEnd: number;
useTimeType: 'RANGE' | 'DAY';
useStart?: number;
useEnd?: number;
dayOfUse?: number;
condition: 'UNCONDITIONAL' | 'FULL_REDUCE';
discount?: number;
full?: number;
reduce?: number;
limitPerPerson: number;
output?: OutputFormat;
}
export interface CouponListOptions {
page?: number;
size?: number;
status?: 'NOT_START' | 'GOING' | 'FINISHED' | 'INVALID';
output?: OutputFormat;
}
export interface CouponDeleteOptions {
couponIds: string[];
output?: OutputFormat;
}
export interface ChannelCouponEnabledOptions {
channelId: string;
output?: OutputFormat;
}
export interface ChannelCouponUpdateEnabledOptions extends ChannelCouponEnabledOptions {
enabled: 'Y' | 'N';
force?: boolean;
}
export interface ChannelCouponListOptions extends ChannelCouponEnabledOptions {
page?: number;
size?: number;
name?: string;
}
export interface ChannelCouponWriteOptions extends ChannelCouponEnabledOptions {
couponIds: string[];
force?: boolean;
}
export interface CouponServiceConfig {
baseUrl: string;
timeout?: number;
debug?: boolean;
}
export declare class CouponHandler extends BaseHandler {
private readonly authConfig;
private readonly serviceConfig;
constructor(authConfig: AuthConfig, serviceConfig: CouponServiceConfig);
addCoupon(options: CouponAddOptions): Promise<void>;
listCoupons(options?: CouponListOptions): Promise<void>;
deleteCoupons(options: CouponDeleteOptions): Promise<void>;
getChannelCouponEnabled(options: ChannelCouponEnabledOptions): Promise<void>;
updateChannelCouponEnabled(options: ChannelCouponUpdateEnabledOptions): Promise<void>;
listChannelCoupons(options: ChannelCouponListOptions): Promise<void>;
addChannelCoupons(options: ChannelCouponWriteOptions): Promise<void>;
deleteChannelCoupons(options: ChannelCouponWriteOptions): Promise<void>;
private validateAddOptions;
private validateListOptions;
private validateDeleteOptions;
private validateChannelId;
private validateYn;
private validateChannelCouponListOptions;
private validateChannelCouponIds;
private transformToAddParams;
private transformToListParams;
private displayAddResult;
private displayListResult;
private displayCouponsTable;
private displayDeleteResult;
private displayGenericWriteResult;
private formatStatus;
private formatDate;
}
//# sourceMappingURL=coupon.handler.d.ts.map