camstreamerlib
Version:
Helper library for CamStreamer ACAP applications.
119 lines (118 loc) • 5.89 kB
TypeScript
import { IClient, TParameters, TResponse } from './internal/types';
import { TAudioDevice, TPortSetSchema, TPortSequenceStateSchema } from './types/VapixAPI';
import { ProxyClient } from './internal/ProxyClient';
import { TCameraImageConfig, THttpRequestOptions, TProxyParams } from './types/common';
export declare class VapixAPI<Client extends IClient<TResponse, any>> {
private client;
private CustomFormData;
constructor(client: Client, CustomFormData?: {
new (form?: HTMLFormElement | undefined, submitter?: HTMLElement | null | undefined): FormData;
prototype: FormData;
});
getClient(proxyParams?: TProxyParams): Client | ProxyClient<Client>;
postUrlEncoded(path: string, parameters?: TParameters, headers?: Record<string, string>, options?: THttpRequestOptions): Promise<TResponse>;
postJson(path: string, jsonData: Record<string, any>, headers?: Record<string, string>, options?: THttpRequestOptions): Promise<TResponse>;
getCameraImage(parameters: TCameraImageConfig, options?: THttpRequestOptions): Promise<ReturnType<Client["get"]>>;
getEventDeclarations(options?: THttpRequestOptions): Promise<string>;
getSupportedAudioSampleRate(options?: THttpRequestOptions): Promise<{
sampleRate: number;
bitRates: number[];
}[]>;
performAutofocus(options?: THttpRequestOptions): Promise<void>;
checkSDCard(options?: THttpRequestOptions): Promise<{
status: "OK" | "connected" | "disconnected";
totalSize: number;
freeSize: number;
}>;
mountSDCard(options?: THttpRequestOptions): Promise<number>;
unmountSDCard(options?: THttpRequestOptions): Promise<number>;
private _doSDCardMountAction;
fetchSDCardJobProgress(jobId: number, options?: THttpRequestOptions): Promise<number>;
downloadCameraReport(options?: THttpRequestOptions): Promise<TResponse>;
getSystemLog(options?: THttpRequestOptions): Promise<TResponse>;
getMaxFps(channel: number, options?: THttpRequestOptions): Promise<number>;
getTimezone(options?: THttpRequestOptions): Promise<string>;
getDateTimeInfo(options?: THttpRequestOptions): Promise<{
data: {
dateTime: string;
dstEnabled: boolean;
localDateTime: string;
posixTimeZone: string;
timeZone?: string | undefined;
};
}>;
getDevicesSettings(options?: THttpRequestOptions): Promise<TAudioDevice[]>;
fetchRemoteDeviceInfo<T extends Record<string, any>>(payload: T, options?: THttpRequestOptions): Promise<any>;
getHeaders(options?: THttpRequestOptions): Promise<Record<string, string>>;
setHeaders(headers: Record<string, string>, options?: THttpRequestOptions): Promise<TResponse>;
getParameter(paramNames: string | string[], options?: THttpRequestOptions): Promise<Record<string, string>>;
setParameter(params: Record<string, string | number | boolean>, options?: THttpRequestOptions): Promise<void>;
getGuardTourList(options?: THttpRequestOptions): Promise<{
name: string;
id: string;
running: string;
tour: {
moveSpeed?: unknown;
position?: unknown;
presetNbr?: unknown;
waitTime?: unknown;
waitTimeViewType?: unknown;
}[];
camNbr?: unknown;
randomEnabled?: unknown;
timeBetweenSequences?: unknown;
}>;
setGuardTourEnabled(guardTourId: string, enable: boolean, options?: THttpRequestOptions): Promise<void>;
getPTZPresetList(channel: number, options?: THttpRequestOptions): Promise<string[]>;
listPTZ(camera: number, options?: THttpRequestOptions): Promise<{
name: string;
id: number;
data: {
pan?: number | undefined;
tilt?: number | undefined;
zoom?: number | undefined;
};
}[]>;
listPtzVideoSourceOverview(options?: THttpRequestOptions): Promise<Record<number, {
name: string;
id: number;
}[]>>;
goToPreset(channel: number, presetName: string, options?: THttpRequestOptions): Promise<TResponse>;
getPtzPosition(camera: number, options?: THttpRequestOptions): Promise<{
pan?: number | undefined;
tilt?: number | undefined;
zoom?: number | undefined;
}>;
getPorts(options?: THttpRequestOptions): Promise<{
name: string;
port: string;
state: "open" | "closed";
configurable: boolean;
usage: string;
direction: "input" | "output";
normalState: "open" | "closed";
readonly?: boolean | undefined;
}[]>;
setPorts(ports: TPortSetSchema[], options?: THttpRequestOptions): Promise<void>;
setPortStateSequence(port: number, sequence: TPortSequenceStateSchema[], options?: THttpRequestOptions): Promise<void>;
getApplicationList(options?: THttpRequestOptions): Promise<{
Name: string;
NiceName: string;
Vendor: string;
Version: string;
License: string;
Status: string;
appId: "CamStreamer" | "CamSwitcher" | "CamOverlay" | "CamScripter" | "PlaneTracker" | "Ndihxplugin" | "SportTracker" | null;
ApplicationID?: string | undefined;
ConfigurationPage?: string | undefined;
VendorHomePage?: string | undefined;
LicenseName?: string | undefined;
}[]>;
startApplication(applicationId: string, options?: THttpRequestOptions): Promise<void>;
restartApplication(applicationId: string, options?: THttpRequestOptions): Promise<void>;
stopApplication(applicationId: string, options?: THttpRequestOptions): Promise<void>;
installApplication(data: Parameters<typeof FormData.prototype.append>[1], fileName: string, options?: THttpRequestOptions): Promise<void>;
private static parseParameters;
private static parseCameraPtzResponse;
private static parsePtz;
}