firebase-admin
Version:
Firebase admin SDK for Node.js
103 lines (102 loc) • 3.08 kB
TypeScript
/*! firebase-admin v10.0.0 */
/*!
* Copyright 2020 Google Inc.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
/**
* Firebase ML Model input objects
*/
export interface ModelOptionsBase {
displayName?: string;
tags?: string[];
}
export interface GcsTfliteModelOptions extends ModelOptionsBase {
tfliteModel: {
gcsTfliteUri: string;
};
}
export interface AutoMLTfliteModelOptions extends ModelOptionsBase {
tfliteModel: {
automlModel: string;
};
}
export declare type ModelOptions = ModelOptionsBase | GcsTfliteModelOptions | AutoMLTfliteModelOptions;
/**
* Interface representing options for listing Models.
*/
export interface ListModelsOptions {
/**
* An expression that specifies how to filter the results.
*
* Examples:
*
* ```
* display_name = your_model
* display_name : experimental_*
* tags: face_detector AND tags: experimental
* state.published = true
* ```
*
* See https://firebase.google.com/docs/ml/manage-hosted-models#list_your_projects_models
*/
filter?: string;
/** The number of results to return in each page. */
pageSize?: number;
/** A token that specifies the result page to return. */
pageToken?: string;
}
export interface StatusErrorResponse {
readonly code: number;
readonly message: string;
}
export declare type ModelUpdateOptions = ModelOptions & {
state?: {
published?: boolean;
};
};
export declare function isGcsTfliteModelOptions(options: ModelOptions): options is GcsTfliteModelOptions;
export interface ModelContent {
readonly displayName?: string;
readonly tags?: string[];
readonly state?: {
readonly validationError?: StatusErrorResponse;
readonly published?: boolean;
};
readonly tfliteModel?: {
readonly gcsTfliteUri?: string;
readonly automlModel?: string;
readonly sizeBytes: number;
};
}
export interface ModelResponse extends ModelContent {
readonly name: string;
readonly createTime: string;
readonly updateTime: string;
readonly etag: string;
readonly modelHash?: string;
readonly activeOperations?: OperationResponse[];
}
export interface ListModelsResponse {
readonly models?: ModelResponse[];
readonly nextPageToken?: string;
}
export interface OperationResponse {
readonly name?: string;
readonly metadata?: {
[key: string]: any;
};
readonly done: boolean;
readonly error?: StatusErrorResponse;
readonly response?: ModelResponse;
}