google-ads-api-client
Version:
A friendly and exhaustive client to the google-ads-api, code generated directly from google's published protobuf schema.
140 lines (139 loc) • 5.56 kB
TypeScript
import type { BinaryWriteOptions } from "@protobuf-ts/runtime";
import type { IBinaryWriter } from "@protobuf-ts/runtime";
import type { BinaryReadOptions } from "@protobuf-ts/runtime";
import type { IBinaryReader } from "@protobuf-ts/runtime";
import type { PartialMessage } from "@protobuf-ts/runtime";
import { MessageType } from "@protobuf-ts/runtime";
/**
* ### System parameter configuration
*
* A system parameter is a special kind of parameter defined by the API
* system, not by an individual API. It is typically mapped to an HTTP header
* and/or a URL query parameter. This configuration specifies which methods
* change the names of the system parameters.
*
* @generated from protobuf message google.api.SystemParameters
*/
export interface SystemParameters {
/**
* Define system parameters.
*
* The parameters defined here will override the default parameters
* implemented by the system. If this field is missing from the service
* config, default system parameters will be used. Default system parameters
* and names is implementation-dependent.
*
* Example: define api key for all methods
*
* system_parameters
* rules:
* - selector: "*"
* parameters:
* - name: api_key
* url_query_parameter: api_key
*
*
* Example: define 2 api key names for a specific method.
*
* system_parameters
* rules:
* - selector: "/ListShelves"
* parameters:
* - name: api_key
* http_header: Api-Key1
* - name: api_key
* http_header: Api-Key2
*
* **NOTE:** All service configuration rules follow "last one wins" order.
*
* @generated from protobuf field: repeated google.api.SystemParameterRule rules = 1;
*/
rules: SystemParameterRule[];
}
/**
* Define a system parameter rule mapping system parameter definitions to
* methods.
*
* @generated from protobuf message google.api.SystemParameterRule
*/
export interface SystemParameterRule {
/**
* Selects the methods to which this rule applies. Use '*' to indicate all
* methods in all APIs.
*
* Refer to [selector][google.api.DocumentationRule.selector] for syntax details.
*
* @generated from protobuf field: string selector = 1;
*/
selector: string;
/**
* Define parameters. Multiple names may be defined for a parameter.
* For a given method call, only one of them should be used. If multiple
* names are used the behavior is implementation-dependent.
* If none of the specified names are present the behavior is
* parameter-dependent.
*
* @generated from protobuf field: repeated google.api.SystemParameter parameters = 2;
*/
parameters: SystemParameter[];
}
/**
* Define a parameter's name and location. The parameter may be passed as either
* an HTTP header or a URL query parameter, and if both are passed the behavior
* is implementation-dependent.
*
* @generated from protobuf message google.api.SystemParameter
*/
export interface SystemParameter {
/**
* Define the name of the parameter, such as "api_key" . It is case sensitive.
*
* @generated from protobuf field: string name = 1;
*/
name: string;
/**
* Define the HTTP header name to use for the parameter. It is case
* insensitive.
*
* @generated from protobuf field: string http_header = 2;
*/
httpHeader: string;
/**
* Define the URL query parameter name to use for the parameter. It is case
* sensitive.
*
* @generated from protobuf field: string url_query_parameter = 3;
*/
urlQueryParameter: string;
}
declare class SystemParameters$Type extends MessageType<SystemParameters> {
constructor();
create(value?: PartialMessage<SystemParameters>): SystemParameters;
internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: SystemParameters): SystemParameters;
internalBinaryWrite(message: SystemParameters, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
}
/**
* @generated MessageType for protobuf message google.api.SystemParameters
*/
export declare const SystemParameters: SystemParameters$Type;
declare class SystemParameterRule$Type extends MessageType<SystemParameterRule> {
constructor();
create(value?: PartialMessage<SystemParameterRule>): SystemParameterRule;
internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: SystemParameterRule): SystemParameterRule;
internalBinaryWrite(message: SystemParameterRule, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
}
/**
* @generated MessageType for protobuf message google.api.SystemParameterRule
*/
export declare const SystemParameterRule: SystemParameterRule$Type;
declare class SystemParameter$Type extends MessageType<SystemParameter> {
constructor();
create(value?: PartialMessage<SystemParameter>): SystemParameter;
internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: SystemParameter): SystemParameter;
internalBinaryWrite(message: SystemParameter, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
}
/**
* @generated MessageType for protobuf message google.api.SystemParameter
*/
export declare const SystemParameter: SystemParameter$Type;
export {};