import { CreateSubscribeToken, SubscribeToken, UpdateSubscribeToken, ListSubscribeTokensSortOptions, ListSubscribeTokensByNameSortOptions } from './types/subscribeToken';
/**
 * Gets the specified subscribe token.
 *
 * @see {@link https://optiview.dolby.com/docs/millicast/api/subscribe-token-v-1-read-token/}
 *
 * @param apiSecret The API Secret used to authenticate this request.
 * @param tokenId Identifier of the subscribe token to read.
 *
 * @returns A {@link !Promise Promise} whose fulfillment handler receives a {@link SubscribeToken} object.
 */
export declare const getToken: (apiSecret: string, tokenId: number) => Promise<SubscribeToken>;
/**
 * ## Deletes the subscribe token
 *
 * Deletes token specified by the token's ID. The Token ID can be found using the {@link listTokens | List Tokens API} or in the API response of {@link createToken | Create Token API}.
 *
 * @see {@link https://optiview.dolby.com/docs/millicast/api/subscribe-token-v-1-delete-token/}
 *
 * @param apiSecret The API Secret used to authenticate this request.
 * @param tokenId Identifier of the subscribe token to delete.
 *
 * @returns A {@link !Promise Promise} whose fulfillment handler receives a flag to indicate if the operation succeeded or not.
 */
export declare const deleteToken: (apiSecret: string, tokenId: number) => Promise<boolean>;
/**
 * ## Updates the subscribe token
 *
 * Update token stream information as well as updates token itself.
 *
 * @see {@link https://optiview.dolby.com/docs/millicast/api/subscribe-token-v-2-update-token/}
 *
 * @param apiSecret The API Secret used to authenticate this request.
 * @param tokenId Identifier of the subscribe token to update.
 * @param subscribeToken Settings of the subscribe token to update.
 *
 * @returns A {@link !Promise Promise} whose fulfillment handler receives a {@link SubscribeToken} object.
 */
export declare const updateToken: (apiSecret: string, tokenId: number, subscribeToken: UpdateSubscribeToken) => Promise<SubscribeToken>;
/**
 * Lists all subscribe tokens with specific sorting and pagination.
 *
 * @see {@link https://optiview.dolby.com/docs/millicast/api/subscribe-token-v-1-list-tokens/}
 *
 * @param apiSecret The API Secret used to authenticate this request.
 * @param options Options to sort the response.
 *
 * @returns A {@link !Promise Promise} whose fulfillment handler receives an array of {@link SubscribeToken} objects.
 */
export declare const listTokens: (apiSecret: string, options: ListSubscribeTokensSortOptions) => Promise<SubscribeToken[]>;
/**
 * ## List Subscribe Tokens By Name
 *
 * List all tokens with specific sorting and pagination that matches given token name or stream name.
 * Tokens with wildcard stream names are excluded from the responses.
 * If response array is empty, you have reached the end of the list ordering.
 *
 * @see {@link https://optiview.dolby.com/docs/millicast/api/subscribe-token-v-1-list-tokens-by-name/}
 *
 * @param apiSecret The API Secret used to authenticate this request.
 * @param options Options to sort the response.
 *
 * @returns A {@link !Promise Promise} whose fulfillment handler receives an array of {@link SubscribeToken} objects.
 */
export declare const listTokensByName: (apiSecret: string, options: ListSubscribeTokensByNameSortOptions) => Promise<SubscribeToken[]>;
/**
 * Creates a subscribe token.
 *
 * @see {@link https://optiview.dolby.com/docs/millicast/api/subscribe-token-v-1-create-token/}
 *
 * @param apiSecret The API Secret used to authenticate this request.
 * @param subscribeToken Information about the new subscribe token.
 *
 * @returns A {@link !Promise Promise} whose fulfillment handler receives a {@link SubscribeToken} object.
 */
export declare const createToken: (apiSecret: string, subscribeToken: CreateSubscribeToken) => Promise<SubscribeToken>;
