eas-cli
Version:
EAS command line tool
34 lines (33 loc) • 2.43 kB
TypeScript
import { EASUpdateAction, EASUpdateContext } from '../../eas-update/utils';
import { UpdateChannelBasicInfoFragment } from '../../graphql/generated';
import { Connection, Edge, QueryParams } from '../../utils/relay';
/**
* Select a channel for the project.
*
* @constructor
* @param {function} options.filterPredicate - A predicate to filter the channels that are shown to the user. It takes a channelInfo object as a parameter and returns a boolean.
* @param {string} options.printedType - The type of channel printed to the user. Defaults to 'channel'.
* @param {number} options.pageSize - The number of channels to show per page. Defaults to 100.
* @param {function} options.beforeEachFilterQuery Optional. If a filter predicate was specified, this callback function will be called before each query.
* @args externalQueryParams The query params for the pagination.
* @args totalNodesFetched The total number of nodes fetched so far.
* @args dataset The dataset so far.
* @param {function} options.afterEachFilterQuery Optional. If a filter predicate was specified, this callback function will be called after each query.
* @args externalQueryParams The query params for the pagination.
* @args totalNodesFetched The total number of nodes fetched so far.
* @args dataset The dataset so far.
* @args willFetchAgain If the query will fetch again to get a complete page.
*/
export declare class SelectChannel implements EASUpdateAction<UpdateChannelBasicInfoFragment | null> {
private readonly options;
constructor(options?: {
filterPredicate?: (channelInfo: UpdateChannelBasicInfoFragment) => boolean;
printedType?: string;
pageSize?: number;
beforeEachFilterQuery?: (externalQueryParams: QueryParams, totalNodesFetched: number, dataset: Edge<UpdateChannelBasicInfoFragment>[]) => void;
afterEachFilterQuery?: (externalQueryParams: QueryParams, totalNodesFetched: number, dataset: Edge<UpdateChannelBasicInfoFragment>[], willFetchAgain: boolean) => void;
});
queryAsync(ctx: EASUpdateContext, queryParams: QueryParams): Promise<Connection<UpdateChannelBasicInfoFragment>>;
filterQueryAsync(ctx: EASUpdateContext, queryParams: QueryParams, filterPredicate: (channelInfo: UpdateChannelBasicInfoFragment) => boolean): Promise<Connection<UpdateChannelBasicInfoFragment>>;
runAsync(ctx: EASUpdateContext): Promise<UpdateChannelBasicInfoFragment | null>;
}