lib/client/services/daiAuthenticationKey/daiAuthenticationKeyService.interface.ts (21 lines of code) (raw):
import type { Statement, UpdateResult } from "../../../common/types";
import type { DaiAuthenticationKeyAction } from "./daiAuthenticationKey.action";
import type {
DaiAuthenticationKey,
DaiAuthenticationKeyPage,
} from "./daiAuthenticationKey.type";
/**
* Provides methods for creating, updating and retrieving
* {@link https://developers.google.com/ad-manager/api/reference/v202405/DaiAuthenticationKeyService.DaiAuthenticationKey DaiAuthenticationKey} objects.
*/
export interface DaiAuthenticationKeyServiceOperations {
/**
* Creates new {@link https://developers.google.com/ad-manager/api/reference/v202405/DaiAuthenticationKeyService.DaiAuthenticationKey DaiAuthenticationKey} objects.
*
* The following fields are required:
*
* - {@link https://developers.google.com/ad-manager/api/reference/v202405/DaiAuthenticationKeyService.DaiAuthenticationKey#name DaiAuthenticationKey.name }
*
* @param daiAuthenticationKeys the DAI authentication keys to create
* @returns the created DAI authentication keys with their IDs filled in
*/
createDaiAuthenticationKeys(
daiAuthenticationKeys: Partial<DaiAuthenticationKey>[],
): Promise<DaiAuthenticationKey[]>;
/**
* Gets a {@link https://developers.google.com/ad-manager/api/reference/v202405/DaiAuthenticationKeyService.DaiAuthenticationKeyPage DaiAuthenticationKeyPage}
* of {@link https://developers.google.com/ad-manager/api/reference/v202405/DaiAuthenticationKeyService.DaiAuthenticationKey DaiAuthenticationKey} objects that satisfy the given
* {@link https://developers.google.com/ad-manager/api/reference/v202405/DaiAuthenticationKeyService.Statement#query Statement.query}.
* The following fields are supported for filtering:
*
* | PQL Property | PQL Property |
* | ------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------- |
* | id | {@link https://developers.google.com/ad-manager/api/reference/v202405/DaiAuthenticationKeyService.DaiAuthenticationKey#id DaiAuthenticationKey.id} |
* | status | {@link https://developers.google.com/ad-manager/api/reference/v202405/DaiAuthenticationKeyService.DaiAuthenticationKey#status DaiAuthenticationKey.status} |
* | name | {@link https://developers.google.com/ad-manager/api/reference/v202405/DaiAuthenticationKeyService.DaiAuthenticationKey#name DaiAuthenticationKey.name} |
*
* @param filterStatement a Publisher Query Language statement to filter a list of DAI authentication keys
* @returns the DAI authentication keys that match the filter
*/
getDaiAuthenticationKeysByStatement(
filterStatement: Statement,
): Promise<DaiAuthenticationKeyPage>;
/**
* Performs actions on {@link https://developers.google.com/ad-manager/api/reference/v202405/DaiAuthenticationKeyService.DaiAuthenticationKey DaiAuthenticationKey} objects that match the given
* {@link https://developers.google.com/ad-manager/api/reference/v202405/DaiAuthenticationKeyService.Statement#query Statement.query}.
*
* DAI authentication keys cannot be deactivated if there are active
* {@link https://developers.google.com/ad-manager/api/reference/v202405/LiveStreamEventService.LiveStreamEvent LiveStreamEvent}s or Content Sources that are using them.
*
* @param daiAuthenticationKeyAction the action to perform
* @param filterStatement a Publisher Query Language statement used to filter a set of live stream events
* @returns the result of the action performed
*/
performDaiAuthenticationKeyAction(
daiAuthenticationKeyAction: DaiAuthenticationKeyAction,
filterStatement: Statement,
): Promise<UpdateResult>;
/**
* Updates the specified {@link https://developers.google.com/ad-manager/api/reference/v202405/DaiAuthenticationKeyService.DaiAuthenticationKey DaiAuthenticationKey} objects.
*
* @param daiAuthenticationKeys the video DAI authentication keys to update
* @returns the updated DAI authentication keys
*/
updateDaiAuthenticationKeys(
daiAuthenticationKeys: DaiAuthenticationKey[],
): Promise<DaiAuthenticationKey[]>;
}