cloudflare
Version:
The official TypeScript library for the Cloudflare API
95 lines • 3.19 kB
text/typescript
import { APIResource } from "../../../core/resource.mjs";
import { APIPromise } from "../../../core/api-promise.mjs";
import { RequestOptions } from "../../../internal/request-options.mjs";
export declare class BaseLogos extends APIResource {
static readonly _key: readonly ['brandProtection', 'v2', 'logos'];
/**
* Create a new saved brand protection logo query for visual similarity matching
*/
create(params: LogoCreateParams, options?: RequestOptions): APIPromise<LogoCreateResponse>;
/**
* Delete a saved brand protection logo query. Returns 404 if the query ID doesn't
* exist.
*/
delete(queryID: string, params: LogoDeleteParams, options?: RequestOptions): APIPromise<LogoDeleteResponse>;
/**
* Get all saved brand protection logo queries for an account. Optionally specify
* id to get a single query. Set download=true to include base64-encoded image
* data.
*/
get(params: LogoGetParams, options?: RequestOptions): APIPromise<LogoGetResponse>;
}
export declare class Logos extends BaseLogos {
}
export interface LogoCreateResponse {
message: string;
success: boolean;
query_id?: number;
}
export interface LogoDeleteResponse {
message: string;
success: boolean;
}
export type LogoGetResponse = Array<LogoGetResponse.LogoGetResponseItem>;
export declare namespace LogoGetResponse {
interface LogoGetResponseItem {
id: number;
r2_path: string;
similarity_threshold: number;
tag: string;
uploaded_at: string | null;
/**
* MIME type of the image (only present when download=true)
*/
content_type?: string;
/**
* Base64-encoded image data (only present when download=true)
*/
image_data?: string;
}
}
export interface LogoCreateParams {
/**
* Path param
*/
account_id: string;
/**
* Body param: Base64 encoded image data. Can include data URI prefix (e.g.,
* 'data:image/png;base64,...') or just the base64 string.
*/
image_data: string;
/**
* Body param: Minimum similarity score (0-1) required for visual matches
*/
similarity_threshold: number;
/**
* Body param: Unique identifier for the logo query
*/
tag: string;
/**
* Body param: If true, search historic scanned images for matches above the
* similarity threshold
*/
search_lookback?: boolean;
}
export interface LogoDeleteParams {
account_id: string;
}
export interface LogoGetParams {
/**
* Path param
*/
account_id: string;
/**
* Query param: Optional query ID to retrieve a specific logo query
*/
id?: string;
/**
* Query param: If true, include base64-encoded image data in the response
*/
download?: string;
}
export declare namespace Logos {
export { type LogoCreateResponse as LogoCreateResponse, type LogoDeleteResponse as LogoDeleteResponse, type LogoGetResponse as LogoGetResponse, type LogoCreateParams as LogoCreateParams, type LogoDeleteParams as LogoDeleteParams, type LogoGetParams as LogoGetParams, };
}
//# sourceMappingURL=logos.d.mts.map