export interface IResourceProviderClient { deleteAsync(url: string, apiVersion: string, requestOptions?: IResourceProviderRequestOptions): Promise; getAsync( url: string, apiVersion: string, queryString?: string, requestOptions?: IResourceProviderRequestOptions ): Promise; postAsync(url: string, apiVersion: string, body: any, requestOptions?: IResourceProviderRequestOptions): Promise; putAsync( url: string, apiVersion: string, body: any, requestOptions?: IResourceProviderRequestOptions ): Promise; patchAsync( url: string, apiVersion: string, body: any, requestOptions?: IResourceProviderRequestOptions ): Promise; } export interface IResourceProviderRequestOptions { skipResourceValidation: boolean; } export interface IResourceProviderClientFactory { getOrCreate(url: string): IResourceProviderClient; }