@twurple/api
Version:
Interact with Twitch's API.
84 lines • 2.33 kB
TypeScript
import { type UserIdResolvable } from '@twurple/common';
import { type HelixPagination } from '../../utils/pagination/HelixPagination.js';
import { type HelixClipFilterType } from './clip.external.js';
/**
* Filters for clip queries.
*/
export interface HelixClipFilter {
/**
* The earliest date to find clips for.
*/
startDate?: string;
/**
* The latest date to find clips for.
*/
endDate?: string;
/**
* The featured flag the results should have.
*
* If not given, both featured and non-featured clips will be returned.
*/
isFeatured?: boolean;
}
/**
* @inheritDoc
*/
export interface HelixPaginatedClipFilter extends HelixClipFilter, HelixPagination {
}
/** @private */
export interface HelixClipIdFilterPart {
filterType: HelixClipFilterType;
ids: string | string[];
userId?: string;
}
/** @private */
export interface HelixClipIdFilter extends HelixClipFilter, HelixClipIdFilterPart {
}
/** @private */
export interface HelixPaginatedClipIdFilter extends HelixPaginatedClipFilter, HelixClipIdFilterPart {
}
/** @private */
interface HelixBaseClipCreateParams {
/**
* The broadcaster of which you want to create a clip.
*/
channel: UserIdResolvable;
/**
* The title of the clip. If not given, the title of the clip will be the same as the title of the stream.
*/
title?: string;
/**
* The duration of the clip, in seconds. The valid range is 5-60, with a precision of 0.1.
*
* If not given, the duration of the clip will be 30 seconds.
*/
duration?: number;
}
/**
* Parameters for creating a clip from a live stream.
*
* @inheritDoc
*/
export interface HelixClipCreateParams extends HelixBaseClipCreateParams {
/**
* Add a delay before the clip creation that accounts for the usual delay in the viewing experience.
*/
createAfterDelay?: boolean;
}
/**
* Parameters for creating a clip from a VOD.
*
* @inheritDoc
*/
export interface HelixClipCreateFromVodParams extends HelixBaseClipCreateParams {
/**
* The ID of the VOD to create a clip from.
*/
vodId: string;
/**
* The offset of the VOD to **end** the clip on. Must be higher than `duration`.
*/
vodOffset: number;
}
export {};
//# sourceMappingURL=clip.input.d.ts.map