@microsoft/windows-admin-center-sdk
Version:
Microsoft - Windows Admin Center Shell
217 lines (216 loc) • 9.86 kB
TypeScript
import { Observable } from 'rxjs';
import { BatchConnection, BatchResponseItem } from './batch-connection';
import { CimMultiple, CimResult, CimSingle } from './cim';
import { NodeConnection, NodeRequestOptions } from './node-connection';
/**
* The CIM Connection class.
*/
export declare class CimConnection {
private nodeConnection;
private batchConnection;
/**
* Initializes a new instance of the CimService class.
*
* @param nodeConnection the NodeConnection class instance injected.
* @param batchConnection the BatchConnection class instance injected.
*/
constructor(nodeConnection: NodeConnection, batchConnection: BatchConnection);
/**
* CIM GET MultipleInstances
*
* @param nodeName the name of the node to use for this request
* @param namespace the cim namespace.
* @param className the class name.
* @param options the options for this request.
* @return Observable<any> the query observable.
*/
getInstanceMultiple(nodeName: string, namespace: string, className: string, options?: NodeRequestOptions): Observable<CimMultiple>;
/**
* CIM GET SingleInstance
*
* @param nodeName the name of the node to use for this request
* @param namespace the cim namespace.
* @param className the class name.
* @param keyProperties the key properties object.
* @param options the options for this request.
* @return Observable<any> the query observable.
*/
getInstanceSingle(nodeName: string, namespace: string, className: string, keyProperties: any, options?: NodeRequestOptions): Observable<CimSingle>;
/**
* CIM POST InstanceMethod
*
* @param nodeName the name of the node to use for this request
* @param namespace the cim namespace.
* @param className the class name.
* @param methodName the method name.
* @param keyProperties the key properties object.
* @param data the method input data.
* @param options the options for this request.
* @return Observable<any> the query observable.
*/
invokeMethodInstance(nodeName: string, namespace: string, className: string, methodName: string, keyProperties: any, data?: any, options?: NodeRequestOptions): Observable<CimResult>;
/**
* CIM POST StaticMethod
*
* @param nodeName the name of the node to use for this request
* @param namespace the cim namespace.
* @param className the class name.
* @param methodName the method name.
* @param data the method input data.
* @param options the options for this request.
* @return Observable<any> the query observable.
*/
invokeMethodStatic(nodeName: string, namespace: string, className: string, methodName: string, data?: any, options?: NodeRequestOptions): Observable<CimResult>;
/**
* CIM PUT SingleInstance
*
* @param nodeName the name of the node to use for this request
* @param namespace the cim namespace.
* @param className the class name.
* @param keyProperties the key properties object.
* @param data the method input data.
* @param options the options for this request.
* @return Observable<any> the query observable.
*/
setInstance(nodeName: string, namespace: string, className: string, keyProperties: any, data: any, options?: NodeRequestOptions): Observable<CimSingle>;
/**
* CIM PATCH SingleInstance
*
* @param nodeName the name of the node to use for this request
* @param namespace the cim namespace.
* @param className the class name.
* @param keyProperties the key properties object.
* @param data the method input data.
* @param options the options for this request.
* @return Observable<any> the query observable.
*/
modifyInstance(nodeName: string, namespace: string, className: string, keyProperties: any, data: any, options?: NodeRequestOptions): Observable<CimSingle>;
/**
* CIM DELETE SingleInstance
*
* @param nodeName the name of the node to use for this request
* @param namespace the cim namespace.
* @param className the class name.
* @param keyProperties the key properties object.
* @param options the options for this request.
* @return Observable<any> the query observable.
*/
deleteInstance(nodeName: string, namespace: string, className: string, keyProperties: any, options?: NodeRequestOptions): Observable<CimSingle>;
/**
* CIM POST WqlQuery
*
* @param nodeName the name of the node to use for this request
* @param namespace the cim namespace.
* @param query the WQL string.
* @param options the options for this request.
* @return Observable<any> the query observable.
*/
getInstanceQuery(nodeName: string, namespace: string, query: string, options?: NodeRequestOptions): Observable<CimMultiple>;
/**
* Handle the fallback from CIM to powershell with JEA, if applicable
* @param error The error to handle
* @param nodeName The node name
* @param options The request options
*/
private handleJeaFallback;
/**********************************
* Cim Batch Section
**********************************/
/**
* CIM GET MultipleInstances for list of nodes
*
* @param nodeNamesList the Nodes to use for this request.
* @param namespace the cim namespace.
* @param className the class name.
* @param options the options for this request.
* @return Observable<BatchResponseItem[]> the query observable.
*/
getBatchInstanceMultiple(nodeNamesList: string[], namespace: string, className: string, options?: NodeRequestOptions): Observable<BatchResponseItem[]>;
/**
* CIM GET SingleInstance for list of nodes
*
* @param nodeNamesList the Nodes to use for this request.
* @param namespace the cim namespace.
* @param className the class name.
* @param keyProperties the key properties object.
* @param options the options for this request.
* @return Observable<BatchResponseItem[]> the query observable.
*/
getBatchInstanceSingle(nodeNamesList: string[], namespace: string, className: string, keyProperties: any, options?: NodeRequestOptions): Observable<BatchResponseItem[]>;
/**
* CIM POST InstanceMethod for list of nodes
*
* @param nodeNamesList the Nodes to use for this request.
* @param namespace the cim namespace.
* @param className the class name.
* @param methodName the method name.
* @param keyProperties the key properties object.
* @param data the method input data.
* @param options the options for this request.
* @return Observable<BatchResponseItem[]> the query observable.
*/
invokeBatchMethodInstance(nodeNamesList: string[], namespace: string, className: string, methodName: string, keyProperties: any, data?: any, options?: NodeRequestOptions): Observable<BatchResponseItem[]>;
/**
* CIM POST StaticMethod for list of nodes
*
* @param nodeNamesList the Nodes to use for this request.
* @param namespace the cim namespace.
* @param className the class name.
* @param methodName the method name.
* @param data the method input data.
* @param options the options for this request.
* @return Observable<BatchResponseItem[]> the query observable.
*/
invokeBatchMethodStatic(nodeNamesList: string[], namespace: string, className: string, methodName: string, data?: any, options?: NodeRequestOptions): Observable<BatchResponseItem[]>;
/**
* CIM PUT SingleInstance for list of nodes
*
* @param nodeName the name of the node to use for this request
* @param namespace the cim namespace.
* @param className the class name.
* @param keyProperties the key properties object.
* @param data the method input data.
* @param options the options for this request.
* @return Observable<BatchResponseItem[]> the query observable.
*/
setBatchInstance(nodeNamesList: string[], namespace: string, className: string, keyProperties: any, data: any, options?: NodeRequestOptions): Observable<BatchResponseItem[]>;
/**
* CIM DELETE SingleInstance for list of nodes
*
* @param nodeNamesList the Nodes to use for this request.
* @param namespace the cim namespace.
* @param className the class name.
* @param keyProperties the key properties object.
* @param options the options for this request.
* @return Observable<BatchResponseItem[]> the query observable.
*/
deleteBatchInstance(nodeNamesList: string[], namespace: string, className: string, keyProperties: any, options?: NodeRequestOptions): Observable<BatchResponseItem[]>;
/**
* CIM POST WqlQuery for list of nodes
*
* @param nodeNamesList the Nodes to use for this request.
* @param namespace the cim namespace.
* @param query the WQL string.
* @param options the options for this request.
* @return Observable<BatchResponseItem[]> the query observable.
*/
getBatchInstanceQuery(nodeNamesList: string[], namespace: string, query: string, options?: NodeRequestOptions): Observable<BatchResponseItem[]>;
/**
* Cim batch post helper
*
* @param nodeNamesList The list of Nodes to run the call against
* @param cimUrl The CIM end point to call
* @param jsonBody The body of Post in json format.
* @param options the request options.
*/
private cimBatchPost;
/**
* Set PowerShell parameters to the options object.
*
* @param options The node request options.
* @param outputType The output data type.
* @param keys The key data.
* @param data The arguments data.
*/
private setPowerShellParameters;
}