ts-onvif
Version:
Client to ONVIF devices
115 lines (114 loc) • 5.23 kB
TypeScript
/**
* AuthenticationBehavior ver10 module
* @author Andrew D.Laptev <a.d.laptev@gmail.com>
* @see https://www.onvif.org/ver10/authenticationbehavior/wsdl
*/
import { Onvif, OnvifServices } from './onvif';
import Service from './service';
import { Capabilities, CreateAuthenticationProfile, CreateAuthenticationProfileResponse, CreateSecurityLevel, CreateSecurityLevelResponse, DeleteAuthenticationProfile, DeleteSecurityLevel, GetAuthenticationProfileInfo, GetAuthenticationProfileInfoList, GetAuthenticationProfileInfoListResponse, GetAuthenticationProfileInfoResponse, GetAuthenticationProfileList, GetAuthenticationProfileListResponse, GetAuthenticationProfiles, GetAuthenticationProfilesResponse, GetSecurityLevelInfo, GetSecurityLevelInfoList, GetSecurityLevelInfoListResponse, GetSecurityLevelInfoResponse, GetSecurityLevelList, GetSecurityLevelListResponse, GetSecurityLevels, GetSecurityLevelsResponse, ModifyAuthenticationProfile, ModifySecurityLevel, SetAuthenticationProfile, SetSecurityLevel } from './interfaces/authenticationbehavior';
/**
* AuthenticationBehavior service
* @example
* ```ts
* const profiles = await cam.authenticationBehavior.getAuthenticationProfileList();
* const token = profiles.authenticationProfile![0].token;
* const levels = await cam.authenticationBehavior.getSecurityLevelList();
* ```
*/
export declare class AuthenticationBehavior extends Service {
constructor(onvif: Onvif, service: keyof OnvifServices);
private static tokensToBuild;
private static oneOrMany;
private static securityLevelConstraintToBuild;
private static authenticationPolicyToBuild;
private static recognitionMethodToBuild;
private static recognitionGroupToBuild;
private static authenticationProfileInfoToBuild;
private static authenticationProfileToBuild;
private static securityLevelInfoToBuild;
private static securityLevelToBuild;
/**
* Returns the capabilities of the authentication behavior service.
*/
getServiceCapabilities(): Promise<Capabilities>;
/**
* Returns authentication profile info items for the requested tokens.
* @param options
*/
getAuthenticationProfileInfo({ token, }: GetAuthenticationProfileInfo): Promise<GetAuthenticationProfileInfoResponse>;
/**
* Returns a list of authentication profile info items.
* @param options
*/
getAuthenticationProfileInfoList(options?: GetAuthenticationProfileInfoList): Promise<GetAuthenticationProfileInfoListResponse>;
/**
* Returns authentication profile items for the requested tokens.
* @param options
*/
getAuthenticationProfiles({ token, }: GetAuthenticationProfiles): Promise<GetAuthenticationProfilesResponse>;
/**
* Returns a list of authentication profile items.
* @param options
*/
getAuthenticationProfileList(options?: GetAuthenticationProfileList): Promise<GetAuthenticationProfileListResponse>;
/**
* Creates a new authentication profile.
* @param options
*/
createAuthenticationProfile({ authenticationProfile, }: CreateAuthenticationProfile): Promise<CreateAuthenticationProfileResponse['token']>;
/**
* Creates or replaces an authentication profile (requires ClientSuppliedTokenSupported).
* @param options
*/
setAuthenticationProfile({ authenticationProfile }: SetAuthenticationProfile): Promise<void>;
/**
* Modifies an existing authentication profile.
* @param options
*/
modifyAuthenticationProfile({ authenticationProfile }: ModifyAuthenticationProfile): Promise<void>;
/**
* Deletes an authentication profile.
* @param options
*/
deleteAuthenticationProfile({ token }: DeleteAuthenticationProfile): Promise<void>;
/**
* Returns security level info items for the requested tokens.
* @param options
*/
getSecurityLevelInfo({ token }: GetSecurityLevelInfo): Promise<GetSecurityLevelInfoResponse>;
/**
* Returns a list of security level info items.
* @param options
*/
getSecurityLevelInfoList(options?: GetSecurityLevelInfoList): Promise<GetSecurityLevelInfoListResponse>;
/**
* Returns security level items for the requested tokens.
* @param options
*/
getSecurityLevels({ token }: GetSecurityLevels): Promise<GetSecurityLevelsResponse>;
/**
* Returns a list of security level items.
* @param options
*/
getSecurityLevelList(options?: GetSecurityLevelList): Promise<GetSecurityLevelListResponse>;
/**
* Creates a new security level.
* @param options
*/
createSecurityLevel({ securityLevel }: CreateSecurityLevel): Promise<CreateSecurityLevelResponse['token']>;
/**
* Creates or replaces a security level (requires ClientSuppliedTokenSupported).
* @param options
*/
setSecurityLevel({ securityLevel }: SetSecurityLevel): Promise<void>;
/**
* Modifies an existing security level.
* @param options
*/
modifySecurityLevel({ securityLevel }: ModifySecurityLevel): Promise<void>;
/**
* Deletes a security level.
* @param options
*/
deleteSecurityLevel({ token }: DeleteSecurityLevel): Promise<void>;
}