import { HttpClient, HttpHeaders, HttpResponse, HttpEvent, HttpParameterCodec, HttpContext } from '@angular/common/http';
import { Observable } from 'rxjs';
import { AcceptEstimateValuationPointResponse } from '../model/acceptEstimateValuationPointResponse';
import { DeletedEntityResponse } from '../model/deletedEntityResponse';
import { DiaryEntry } from '../model/diaryEntry';
import { Fee } from '../model/fee';
import { FeeProperties } from '../model/feeProperties';
import { FeeRequest } from '../model/feeRequest';
import { Fund } from '../model/fund';
import { FundProperties } from '../model/fundProperties';
import { FundRequest } from '../model/fundRequest';
import { Operation } from '../model/operation';
import { PagedResourceListOfFee } from '../model/pagedResourceListOfFee';
import { PagedResourceListOfFund } from '../model/pagedResourceListOfFund';
import { PagedResourceListOfValuationPointOverview } from '../model/pagedResourceListOfValuationPointOverview';
import { Property } from '../model/property';
import { SetShareClassInstrumentsRequest } from '../model/setShareClassInstrumentsRequest';
import { UpsertValuationPointRequest } from '../model/upsertValuationPointRequest';
import { ValuationPointDataQueryParameters } from '../model/valuationPointDataQueryParameters';
import { ValuationPointDataRequest } from '../model/valuationPointDataRequest';
import { ValuationPointDataResponse } from '../model/valuationPointDataResponse';
import { ValuationPointResourceListOfAccountedTransaction } from '../model/valuationPointResourceListOfAccountedTransaction';
import { ValuationPointResourceListOfFundJournalEntryLine } from '../model/valuationPointResourceListOfFundJournalEntryLine';
import { ValuationPointResourceListOfPnlJournalEntryLine } from '../model/valuationPointResourceListOfPnlJournalEntryLine';
import { ValuationPointResourceListOfTrialBalance } from '../model/valuationPointResourceListOfTrialBalance';
import { Configuration } from '../configuration';
import * as i0 from "@angular/core";
export interface AcceptEstimateValuationPointRequestParams {
    /** The scope of the Fund. */
    scope: string;
    /** The code of the Fund. Together with the scope this uniquely identifies the Fund. */
    code: string;
    /** The valuationPointDataRequest which contains the Diary Entry code for the Estimate Valuation Point to move to Candidate or Final state. */
    valuationPointDataRequest: ValuationPointDataRequest;
}
export interface CreateFeeRequestParams {
    /** The scope of the Fund. */
    scope: string;
    /** The code of the Fund. Together with the scope this uniquely identifies the Fund. */
    code: string;
    /** The Fee to create. */
    feeRequest: FeeRequest;
}
export interface CreateFundRequestParams {
    /** The scope of the Fund. */
    scope: string;
    /** The definition of the Fund. */
    fundRequest: FundRequest;
}
export interface DeleteFeeRequestParams {
    /** The scope of the Fund */
    scope: string;
    /** The code of the Fund. Together with the scope this uniquely identifies the Fund. */
    code: string;
    /** The code of the Fee to be deleted. */
    feeCode: string;
}
export interface DeleteFundRequestParams {
    /** The scope of the Fund to be deleted. */
    scope: string;
    /** The code of the Fund to be deleted. Together with the scope this uniquely identifies the Fund. */
    code: string;
}
export interface DeleteValuationPointRequestParams {
    /** The scope of the Fund for the valuation point to be deleted. */
    scope: string;
    /** The code of the Fund containing the Valuation Point to be deleted. Together with the scope this uniquely identifies the Fund. */
    code: string;
    /** The diary entry code for the valuation Point to be deleted. */
    diaryEntryCode: string;
}
export interface FinaliseCandidateValuationPointRequestParams {
    /** The scope of the Fund. */
    scope: string;
    /** The code of the Fund. Together with the scope this uniquely identifies the Fund. */
    code: string;
    /** The valuationPointDataRequest which contains the diary entry code to mark as final. */
    valuationPointDataRequest: ValuationPointDataRequest;
}
export interface GetFeeRequestParams {
    /** The scope of the Fund. */
    scope: string;
    /** The code of the Fund. Together with the scope this uniquely identifies the Fund. */
    code: string;
    /** The code of the Fee. */
    feeCode: string;
    /** The effective datetime or cut label at which to retrieve the Fee properties. Defaults to the current LUSID system datetime if not specified. */
    effectiveAt?: string;
    /** The asAt datetime at which to retrieve the Fee. Defaults to returning the latest version of the Fee if not specified. */
    asAt?: string;
    /** A list of property keys from the \&#39;Fee\&#39; domain to decorate onto the Fee.              These must take the format {domain}/{scope}/{code}, for example \&#39;Fee/Account/Id\&#39;. If no properties are specified, then no properties will be returned. */
    propertyKeys?: Array<string>;
}
export interface GetFeePropertiesRequestParams {
    /** The scope of the Fund. */
    scope: string;
    /** The code of the Fund. Together with the scope this uniquely identifies the Fund. */
    code: string;
    /** The code of the Fee to get the properties for. */
    feeCode: string;
    /** The effective datetime or cut label at which to list the Fee\&#39;s properties. Defaults to the current LUSID system datetime if not specified. */
    effectiveAt?: string;
    /** The asAt datetime at which to list the Fee\&#39;s properties. Defaults to return the latest version of each property if not specified. */
    asAt?: string;
}
export interface GetFundRequestParams {
    /** The scope of the Fund. */
    scope: string;
    /** The code of the Fund. Together with the scope this uniquely identifies the Fund. */
    code: string;
    /** The effective datetime or cut label at which to retrieve the Fund properties. Defaults to the current LUSID system datetime if not specified. */
    effectiveAt?: string;
    /** The asAt datetime at which to retrieve the Fund definition. Defaults to returning the latest version of the Fund definition if not specified. */
    asAt?: string;
    /** A list of property keys from the \&#39;Fund\&#39; domain to decorate onto the Fund.              These must take the format {domain}/{scope}/{code}, for example \&#39;Fund/Manager/Id\&#39;. If no properties are specified, then no properties will be returned. */
    propertyKeys?: Array<string>;
}
export interface GetFundPropertiesRequestParams {
    /** The scope of the Fund to list the properties for. */
    scope: string;
    /** The code of the Fund to list the properties for. Together with the scope this uniquely identifies the Fund. */
    code: string;
    /** The effective datetime or cut label at which to list the Fund\&#39;s properties. Defaults to the current LUSID system datetime if not specified. */
    effectiveAt?: string;
    /** The asAt datetime at which to list the Fund\&#39;s properties. Defaults to return the latest version of each property if not specified. */
    asAt?: string;
}
export interface GetValuationPointDataRequestParams {
    /** The scope of the Fund. */
    scope: string;
    /** The code of the Fund. Together with the scope this uniquely identifies the Fund. */
    code: string;
    /** The arguments to use for querying the Valuation Point data */
    valuationPointDataQueryParameters: ValuationPointDataQueryParameters;
    /** The asAt datetime at which to retrieve the Fund definition. Defaults to returning the latest version of the Fund definition if not specified. */
    asAt?: string;
}
export interface GetValuationPointJournalEntryLinesRequestParams {
    /** The scope of the Fund. */
    scope: string;
    /** The code of the Fund. Together with the scope is creating the unique identifier for the given Fund. */
    code: string;
    /** The arguments to use for querying the Journal Entry lines. */
    valuationPointDataQueryParameters: ValuationPointDataQueryParameters;
    /** The optional code of a general ledger profile used to decorate journal entry lines with levels. */
    generalLedgerProfileCode?: string;
    /** The asAt datetime at which to retrieve Journal Entry lines. Defaults to returning the latest version               of each transaction if not specified. */
    asAt?: string;
    /** Expression to filter the result set. */
    filter?: string;
    /** When paginating, limit the number of returned results to this many. Defaults to 100 if not specified. */
    limit?: number;
    /** The pagination token to use to continue listing Journal Entry lines from a previous call to GetValuationPointJournalEntryLines. */
    page?: string;
    /** A list of property keys from the \&#39;Instrument\&#39;, \&#39;Transaction\&#39;, \&#39;Portfolio\&#39;, \&#39;Account\&#39;, \&#39;LegalEntity\&#39; or \&#39;CustodianAccount\&#39;               domain to decorate onto the journal entry lines. */
    propertyKeys?: Array<string>;
}
export interface GetValuationPointPnlSummaryRequestParams {
    /** The scope of the Fund. */
    scope: string;
    /** The code of the Fund. Together with the scope is the unique identifier for the given Fund. */
    code: string;
    /** The query parameters used in running the generation of the PnL summary */
    valuationPointDataQueryParameters: ValuationPointDataQueryParameters;
    /** The optional code of a general ledger profile used to decorate journal entry lines with levels. */
    generalLedgerProfileCode?: string;
    /** The asAt datetime at which to retrieve PnL summary. Defaults to returning the latest version              of each transaction if not specified. */
    asAt?: string;
    /** \&quot;Expression to filter the result set.\&quot; */
    filter?: string;
    /** When paginating, limit the number of returned results to this many. Defaults to 100 if not specified. */
    limit?: number;
    /** The pagination token to use to continue listing Trial balance from a previous call to Trial balance. */
    page?: string;
}
export interface GetValuationPointTransactionsRequestParams {
    /** The scope of the Fund. */
    scope: string;
    /** The code of the Fund. Together with the scope is creating the unique identifier for the given Fund. */
    code: string;
    /** The arguments to use for querying the transactions. */
    valuationPointDataQueryParameters: ValuationPointDataQueryParameters;
    /** The asAt datetime at which to retrieve transactions. Defaults to returning the latest version              of each transaction if not specified. */
    asAt?: string;
    /** Expression to filter the result set. */
    filter?: string;
    /** When paginating, limit the number of returned results to this many. Defaults to 100 if not specified. */
    limit?: number;
    /** The pagination token to use to continue listing transactions from a previous call to GetValuationPointTransactions. */
    page?: string;
    /** A list of property keys from the \&#39;Instrument\&#39;, \&#39;Transaction\&#39;, \&#39;Portfolio\&#39;, \&#39;Account\&#39;, \&#39;LegalEntity\&#39; or \&#39;CustodianAccount\&#39;              domain to decorate onto the journal entry lines. */
    propertyKeys?: Array<string>;
}
export interface GetValuationPointTrialBalanceRequestParams {
    /** The scope of the Fund. */
    scope: string;
    /** The code of the Fund. Together with the scope this uniquely identifies the Fund. */
    code: string;
    /** The query parameters used in running the generation of the Trial Balance. */
    valuationPointDataQueryParameters: ValuationPointDataQueryParameters;
    /** The optional code of a general ledger profile used to decorate journal entry lines with levels. */
    generalLedgerProfileCode?: string;
    /** The asAt datetime at which to retrieve the Trial Balance.               Defaults to returning the latest version if not specified. */
    asAt?: string;
    /** Expression to filter the results by.               For more information about filtering results, see https://support.lusid.com/knowledgebase/article/KA-01914. */
    filter?: string;
    /** When paginating, limit the number of returned results to this number.               Defaults to 100 if not specified. */
    limit?: number;
    /** The pagination token to use to continue listing Trial Balances.               This token is returned from the previous call.               If a pagination token is provided, the filter, effectiveAt and asAt fields               must not have changed since the original request. */
    page?: string;
    /** A list of property keys from the \&#39;Instrument\&#39;, \&#39;Transaction\&#39;, \&#39;Portfolio\&#39;, \&#39;Account\&#39;, \&#39;LegalEntity\&#39; or \&#39;CustodianAccount\&#39;               domain to decorate onto the journal entry lines. */
    propertyKeys?: Array<string>;
}
export interface ListFeesRequestParams {
    /** The scope of the Fund. */
    scope: string;
    /** The code of the Fund. */
    code: string;
    /** The effective datetime or cut label at which to list the TimeVariant properties for the Fees. Defaults to the current LUSID              system datetime if not specified. */
    effectiveAt?: string;
    /** The asAt datetime at which to list the Fees. Defaults to returning the latest version of each Fee if not specified. */
    asAt?: string;
    /** The pagination token to use to continue listing fees; this              value is returned from the previous call. If a pagination token is provided, the filter, effectiveAt              and asAt fields must not have changed since the original request. */
    page?: string;
    /** When paginating, limit the results to this number. Defaults to 100 if not specified. */
    limit?: number;
    /** Expression to filter the results.              For example, to filter on the treatment, specify \&quot;treatment eq \&#39;Monthly\&#39;\&quot;. For more information about filtering              results, see https://support.lusid.com/knowledgebase/article/KA-01914. */
    filter?: string;
    /** A list of field names or properties to sort by, each suffixed by \&quot; ASC\&quot; or \&quot; DESC\&quot; */
    sortBy?: Array<string>;
    /** A list of property keys from the \&#39;Fee\&#39; domain to decorate onto each Fee.              These must take the format {domain}/{scope}/{code}, for example \&#39;Fee/Account/Id\&#39;. */
    propertyKeys?: Array<string>;
}
export interface ListFundsRequestParams {
    /** The effective datetime or cut label at which to list the TimeVariant properties for the Funds. Defaults to the current LUSID              system datetime if not specified. */
    effectiveAt?: string;
    /** The asAt datetime at which to list the Funds. Defaults to returning the latest version of each Fund if not specified. */
    asAt?: string;
    /** The pagination token to use to continue listing Funds; this              value is returned from the previous call. If a pagination token is provided, the filter, effectiveAt              and asAt fields must not have changed since the original request. */
    page?: string;
    /** When paginating, limit the results to this number. Defaults to 100 if not specified. */
    limit?: number;
    /** Expression to filter the results.              For example, to filter on the Fund type, specify \&quot;id.Code eq \&#39;Fund1\&#39;\&quot;. For more information about filtering              results, see https://support.lusid.com/knowledgebase/article/KA-01914. */
    filter?: string;
    /** A list of field names or properties to sort by, each suffixed by \&quot; ASC\&quot; or \&quot; DESC\&quot; */
    sortBy?: Array<string>;
    /** A list of property keys from the \&#39;Fund\&#39; domain to decorate onto each Fund.              These must take the format {domain}/{scope}/{code}, for example \&#39;Fund/Manager/Id\&#39;. */
    propertyKeys?: Array<string>;
}
export interface ListValuationPointOverviewRequestParams {
    /** The scope of the Fund. */
    scope: string;
    /** The code of the Fund. */
    code: string;
    /** The effective datetime or cut label at which to list the TimeVariant properties for the ValuationPoints. Defaults to the current LUSID              system datetime if not specified. */
    effectiveAt?: string;
    /** The asAt datetime at which to list the ValuationPoints. Defaults to returning the latest version of each ValuationPoint if not specified. */
    asAt?: string;
    /** The pagination token to use to continue listing ValuationPoints; this              value is returned from the previous call. If a pagination token is provided, the filter, effectiveAt              and asAt fields must not have changed since the original request. */
    page?: string;
    /** When paginating, limit the results to this number. Defaults to 100 if not specified. */
    limit?: number;
    /** Expression to filter the results by.              For example, to filter on the NAV, specify \&quot;NAV gt 300\&quot;. For more information about filtering              results, see https://support.lusid.com/knowledgebase/article/KA-01914. */
    filter?: string;
    /** A list of property keys from the \&#39;DiaryEntry\&#39; domain to decorate onto each ValuationPoint.              These must take the format {domain}/{scope}/{code}, for example \&#39;DiaryEntry/ValuationPoint/Id\&#39;. */
    propertyKeys?: Array<string>;
}
export interface PatchFeeRequestParams {
    /** The scope of the Fund. */
    scope: string;
    /** The code of the Fund. Together with the scope this uniquely identifies the Fund. */
    code: string;
    /** The code of the Fee. */
    feeCode: string;
    /** The json patch document. For more information see: https://datatracker.ietf.org/doc/html/rfc6902. */
    operation: Array<Operation>;
}
export interface PatchFundRequestParams {
    /** The scope of the Fund. */
    scope: string;
    /** The code of the Fund. Together with the scope this uniquely identifies the Fund. */
    code: string;
    /** The json patch document. For more information see: https://datatracker.ietf.org/doc/html/rfc6902. */
    operation: Array<Operation>;
}
export interface SetShareClassInstrumentsRequestParams {
    /** The scope of the Fund. */
    scope: string;
    /** The code of the Fund. */
    code: string;
    /** The scopes and instrument identifiers for the instruments to be set. */
    setShareClassInstrumentsRequest: SetShareClassInstrumentsRequest;
}
export interface UpsertDiaryEntryTypeValuationPointRequestParams {
    /** The scope of the Fund. */
    scope: string;
    /** The code of the Fund. Together with the scope this uniquely identifies the Fund. */
    code: string;
    /** The Valuation Point Estimate definition to Upsert */
    upsertValuationPointRequest: UpsertValuationPointRequest;
}
export interface UpsertFeePropertiesRequestParams {
    /** The scope of the Fund. */
    scope: string;
    /** The code of the Fund. Together with the scope this uniquely identifies the Fund. */
    code: string;
    /** The code of the Fee to update or insert the properties onto. */
    feeCode: string;
    /** The properties to be updated or inserted onto the Fee. Each property in               the request must be keyed by its unique property key. This has the format {domain}/{scope}/{code} e.g. \&quot;Fee/Manager/Id\&quot;. */
    requestBody?: {
        [key: string]: Property;
    };
}
export interface UpsertFundPropertiesRequestParams {
    /** The scope of the Fund to update or insert the properties onto. */
    scope: string;
    /** The code of the Fund to update or insert the properties onto. Together with the scope this uniquely identifies the Fund. */
    code: string;
    /** The properties to be updated or inserted onto the Fund. Each property in               the request must be keyed by its unique property key. This has the format {domain}/{scope}/{code} e.g. \&quot;Fund/Manager/Id\&quot;. */
    requestBody?: {
        [key: string]: Property;
    };
}
export declare class FundsService {
    protected httpClient: HttpClient;
    protected basePath: string;
    defaultHeaders: HttpHeaders;
    configuration: Configuration;
    encoder: HttpParameterCodec;
    constructor(httpClient: HttpClient, basePath: string | string[], configuration: Configuration);
    private addToHttpParams;
    private addToHttpParamsRecursive;
    /**
     * [EXPERIMENTAL] AcceptEstimateValuationPoint: Accepts an Estimate Valuation Point.
     * Accepts the specified estimate Valuation Point.  Should the Valuation Point differ since the Valuation Point was last run, both Valuation Points will be returned and status will be marked as \&#39;Candidate\&#39;,  otherwise it will be marked as \&#39;Final\&#39;.
     * @param requestParameters
     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.
     * @param reportProgress flag to report request and response progress.
     */
    acceptEstimateValuationPoint(requestParameters?: AcceptEstimateValuationPointRequestParams, observe?: 'body', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<AcceptEstimateValuationPointResponse>;
    acceptEstimateValuationPoint(requestParameters?: AcceptEstimateValuationPointRequestParams, observe?: 'response', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<HttpResponse<AcceptEstimateValuationPointResponse>>;
    acceptEstimateValuationPoint(requestParameters?: AcceptEstimateValuationPointRequestParams, observe?: 'events', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<HttpEvent<AcceptEstimateValuationPointResponse>>;
    /**
     * [EXPERIMENTAL] CreateFee: Create a Fee.
     * Create the given Fee.
     * @param requestParameters
     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.
     * @param reportProgress flag to report request and response progress.
     */
    createFee(requestParameters?: CreateFeeRequestParams, observe?: 'body', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<Fee>;
    createFee(requestParameters?: CreateFeeRequestParams, observe?: 'response', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<HttpResponse<Fee>>;
    createFee(requestParameters?: CreateFeeRequestParams, observe?: 'events', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<HttpEvent<Fee>>;
    /**
     * [EXPERIMENTAL] CreateFund: Create a Fund.
     * Create the given Fund.
     * @param requestParameters
     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.
     * @param reportProgress flag to report request and response progress.
     */
    createFund(requestParameters?: CreateFundRequestParams, observe?: 'body', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<Fund>;
    createFund(requestParameters?: CreateFundRequestParams, observe?: 'response', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<HttpResponse<Fund>>;
    createFund(requestParameters?: CreateFundRequestParams, observe?: 'events', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<HttpEvent<Fund>>;
    /**
     * [EXPERIMENTAL] DeleteFee: Delete a Fee.
     * Delete the given Fee.
     * @param requestParameters
     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.
     * @param reportProgress flag to report request and response progress.
     */
    deleteFee(requestParameters?: DeleteFeeRequestParams, observe?: 'body', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<DeletedEntityResponse>;
    deleteFee(requestParameters?: DeleteFeeRequestParams, observe?: 'response', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<HttpResponse<DeletedEntityResponse>>;
    deleteFee(requestParameters?: DeleteFeeRequestParams, observe?: 'events', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<HttpEvent<DeletedEntityResponse>>;
    /**
     * [EXPERIMENTAL] DeleteFund: Delete a Fund.
     * Delete the given Fund.
     * @param requestParameters
     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.
     * @param reportProgress flag to report request and response progress.
     */
    deleteFund(requestParameters?: DeleteFundRequestParams, observe?: 'body', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<DeletedEntityResponse>;
    deleteFund(requestParameters?: DeleteFundRequestParams, observe?: 'response', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<HttpResponse<DeletedEntityResponse>>;
    deleteFund(requestParameters?: DeleteFundRequestParams, observe?: 'events', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<HttpEvent<DeletedEntityResponse>>;
    /**
     * [EXPERIMENTAL] DeleteValuationPoint: Delete a Valuation Point.
     * Deletes the given Valuation Point.
     * @param requestParameters
     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.
     * @param reportProgress flag to report request and response progress.
     */
    deleteValuationPoint(requestParameters?: DeleteValuationPointRequestParams, observe?: 'body', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<DeletedEntityResponse>;
    deleteValuationPoint(requestParameters?: DeleteValuationPointRequestParams, observe?: 'response', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<HttpResponse<DeletedEntityResponse>>;
    deleteValuationPoint(requestParameters?: DeleteValuationPointRequestParams, observe?: 'events', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<HttpEvent<DeletedEntityResponse>>;
    /**
     * [EXPERIMENTAL] FinaliseCandidateValuationPoint: Finalise Candidate.
     * Moves a \&#39;Candidate\&#39; status Valuation Point to status \&#39;Final\&#39;.
     * @param requestParameters
     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.
     * @param reportProgress flag to report request and response progress.
     */
    finaliseCandidateValuationPoint(requestParameters?: FinaliseCandidateValuationPointRequestParams, observe?: 'body', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<ValuationPointDataResponse>;
    finaliseCandidateValuationPoint(requestParameters?: FinaliseCandidateValuationPointRequestParams, observe?: 'response', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<HttpResponse<ValuationPointDataResponse>>;
    finaliseCandidateValuationPoint(requestParameters?: FinaliseCandidateValuationPointRequestParams, observe?: 'events', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<HttpEvent<ValuationPointDataResponse>>;
    /**
     * [EXPERIMENTAL] GetFee: Get a Fee for a specified Fund.
     * Retrieve a fee for a specified Fund
     * @param requestParameters
     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.
     * @param reportProgress flag to report request and response progress.
     */
    getFee(requestParameters?: GetFeeRequestParams, observe?: 'body', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<Fee>;
    getFee(requestParameters?: GetFeeRequestParams, observe?: 'response', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<HttpResponse<Fee>>;
    getFee(requestParameters?: GetFeeRequestParams, observe?: 'events', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<HttpEvent<Fee>>;
    /**
     * [EXPERIMENTAL] GetFeeProperties: Get Fee properties
     * Get all the properties of a single fee.
     * @param requestParameters
     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.
     * @param reportProgress flag to report request and response progress.
     */
    getFeeProperties(requestParameters?: GetFeePropertiesRequestParams, observe?: 'body', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<FeeProperties>;
    getFeeProperties(requestParameters?: GetFeePropertiesRequestParams, observe?: 'response', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<HttpResponse<FeeProperties>>;
    getFeeProperties(requestParameters?: GetFeePropertiesRequestParams, observe?: 'events', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<HttpEvent<FeeProperties>>;
    /**
     * [EXPERIMENTAL] GetFund: Get a Fund.
     * Retrieve the definition of a particular Fund.
     * @param requestParameters
     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.
     * @param reportProgress flag to report request and response progress.
     */
    getFund(requestParameters?: GetFundRequestParams, observe?: 'body', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<Fund>;
    getFund(requestParameters?: GetFundRequestParams, observe?: 'response', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<HttpResponse<Fund>>;
    getFund(requestParameters?: GetFundRequestParams, observe?: 'events', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<HttpEvent<Fund>>;
    /**
     * [EXPERIMENTAL] GetFundProperties: Get Fund properties
     * Get all the properties of a single fund.
     * @param requestParameters
     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.
     * @param reportProgress flag to report request and response progress.
     */
    getFundProperties(requestParameters?: GetFundPropertiesRequestParams, observe?: 'body', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<FundProperties>;
    getFundProperties(requestParameters?: GetFundPropertiesRequestParams, observe?: 'response', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<HttpResponse<FundProperties>>;
    getFundProperties(requestParameters?: GetFundPropertiesRequestParams, observe?: 'events', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<HttpEvent<FundProperties>>;
    /**
     * [EXPERIMENTAL] GetValuationPointData: Get Valuation Point Data for a Fund.
     * Retrieves the Valuation Point data for a date or specified Diary Entry Id.  The endpoint will internally extract all \&#39;Assets\&#39; and \&#39;Liabilities\&#39; from the related ABOR\&#39;s Trial balance to produce a GAV.  Start date will be assumed from the last \&#39;official\&#39; DiaryEntry and EndDate will be as provided.
     * @param requestParameters
     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.
     * @param reportProgress flag to report request and response progress.
     */
    getValuationPointData(requestParameters?: GetValuationPointDataRequestParams, observe?: 'body', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<ValuationPointDataResponse>;
    getValuationPointData(requestParameters?: GetValuationPointDataRequestParams, observe?: 'response', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<HttpResponse<ValuationPointDataResponse>>;
    getValuationPointData(requestParameters?: GetValuationPointDataRequestParams, observe?: 'events', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<HttpEvent<ValuationPointDataResponse>>;
    /**
     * [EXPERIMENTAL] GetValuationPointJournalEntryLines: Get the Journal Entry lines for the given Fund.
     * Gets the Journal Entry lines for the given Valuation Point for a Fund                The Journal Entry lines have been generated from transactions, translated via posting rules and used in the valuation point
     * @param requestParameters
     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.
     * @param reportProgress flag to report request and response progress.
     */
    getValuationPointJournalEntryLines(requestParameters?: GetValuationPointJournalEntryLinesRequestParams, observe?: 'body', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<ValuationPointResourceListOfFundJournalEntryLine>;
    getValuationPointJournalEntryLines(requestParameters?: GetValuationPointJournalEntryLinesRequestParams, observe?: 'response', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<HttpResponse<ValuationPointResourceListOfFundJournalEntryLine>>;
    getValuationPointJournalEntryLines(requestParameters?: GetValuationPointJournalEntryLinesRequestParams, observe?: 'events', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<HttpEvent<ValuationPointResourceListOfFundJournalEntryLine>>;
    /**
     * [EXPERIMENTAL] GetValuationPointPnlSummary: Get a PnL summary for the given Valuation Point in the Fund.
     * Gets the PnL Summary lines from the journal entry lines produced when calculating the valuation point.
     * @param requestParameters
     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.
     * @param reportProgress flag to report request and response progress.
     */
    getValuationPointPnlSummary(requestParameters?: GetValuationPointPnlSummaryRequestParams, observe?: 'body', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<ValuationPointResourceListOfPnlJournalEntryLine>;
    getValuationPointPnlSummary(requestParameters?: GetValuationPointPnlSummaryRequestParams, observe?: 'response', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<HttpResponse<ValuationPointResourceListOfPnlJournalEntryLine>>;
    getValuationPointPnlSummary(requestParameters?: GetValuationPointPnlSummaryRequestParams, observe?: 'events', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<HttpEvent<ValuationPointResourceListOfPnlJournalEntryLine>>;
    /**
     * [EXPERIMENTAL] GetValuationPointTransactions: Get the Transactions for the given Fund.
     * Gets the Transactions for the given Valuation Point for a Fund
     * @param requestParameters
     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.
     * @param reportProgress flag to report request and response progress.
     */
    getValuationPointTransactions(requestParameters?: GetValuationPointTransactionsRequestParams, observe?: 'body', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<ValuationPointResourceListOfAccountedTransaction>;
    getValuationPointTransactions(requestParameters?: GetValuationPointTransactionsRequestParams, observe?: 'response', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<HttpResponse<ValuationPointResourceListOfAccountedTransaction>>;
    getValuationPointTransactions(requestParameters?: GetValuationPointTransactionsRequestParams, observe?: 'events', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<HttpEvent<ValuationPointResourceListOfAccountedTransaction>>;
    /**
     * [EXPERIMENTAL] GetValuationPointTrialBalance: Get Trial Balance for the given Fund.
     * Gets the Trial Balance for the given Valuation Point for a Fund.                The Trial Balance has been generated from transactions, translated via Posting Rules  and aggregated based on a General Ledger Profile (where specified).
     * @param requestParameters
     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.
     * @param reportProgress flag to report request and response progress.
     */
    getValuationPointTrialBalance(requestParameters?: GetValuationPointTrialBalanceRequestParams, observe?: 'body', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<ValuationPointResourceListOfTrialBalance>;
    getValuationPointTrialBalance(requestParameters?: GetValuationPointTrialBalanceRequestParams, observe?: 'response', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<HttpResponse<ValuationPointResourceListOfTrialBalance>>;
    getValuationPointTrialBalance(requestParameters?: GetValuationPointTrialBalanceRequestParams, observe?: 'events', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<HttpEvent<ValuationPointResourceListOfTrialBalance>>;
    /**
     * [EXPERIMENTAL] ListFees: List Fees for a specified Fund.
     * List all the Fees matching a particular criteria.
     * @param requestParameters
     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.
     * @param reportProgress flag to report request and response progress.
     */
    listFees(requestParameters?: ListFeesRequestParams, observe?: 'body', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<PagedResourceListOfFee>;
    listFees(requestParameters?: ListFeesRequestParams, observe?: 'response', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<HttpResponse<PagedResourceListOfFee>>;
    listFees(requestParameters?: ListFeesRequestParams, observe?: 'events', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<HttpEvent<PagedResourceListOfFee>>;
    /**
     * [EXPERIMENTAL] ListFunds: List Funds.
     * List all the Funds matching particular criteria.
     * @param requestParameters
     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.
     * @param reportProgress flag to report request and response progress.
     */
    listFunds(requestParameters?: ListFundsRequestParams, observe?: 'body', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<PagedResourceListOfFund>;
    listFunds(requestParameters?: ListFundsRequestParams, observe?: 'response', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<HttpResponse<PagedResourceListOfFund>>;
    listFunds(requestParameters?: ListFundsRequestParams, observe?: 'events', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<HttpEvent<PagedResourceListOfFund>>;
    /**
     * [EXPERIMENTAL] ListValuationPointOverview: List Valuation Points Overview for a given Fund.
     * List all the Valuation Points that match the given criteria for a given Fund.
     * @param requestParameters
     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.
     * @param reportProgress flag to report request and response progress.
     */
    listValuationPointOverview(requestParameters?: ListValuationPointOverviewRequestParams, observe?: 'body', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<PagedResourceListOfValuationPointOverview>;
    listValuationPointOverview(requestParameters?: ListValuationPointOverviewRequestParams, observe?: 'response', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<HttpResponse<PagedResourceListOfValuationPointOverview>>;
    listValuationPointOverview(requestParameters?: ListValuationPointOverviewRequestParams, observe?: 'events', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<HttpEvent<PagedResourceListOfValuationPointOverview>>;
    /**
     * [EXPERIMENTAL] PatchFee: Patch Fee.
     * Create or update certain fields for a particular Fee.  The behaviour is defined by the JSON Patch specification.                Currently supported fields are: EndDate.
     * @param requestParameters
     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.
     * @param reportProgress flag to report request and response progress.
     */
    patchFee(requestParameters?: PatchFeeRequestParams, observe?: 'body', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<Fee>;
    patchFee(requestParameters?: PatchFeeRequestParams, observe?: 'response', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<HttpResponse<Fee>>;
    patchFee(requestParameters?: PatchFeeRequestParams, observe?: 'events', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<HttpEvent<Fee>>;
    /**
     * [EXPERIMENTAL] PatchFund: Patch a Fund.
     * Update fields on a Fund. The behaviour is defined by the JSON Patch specification.  Currently supported fields are: DisplayName, Description, FundConfigurationId, AborId, ShareClassInstrumentScopes, ShareClassInstruments, InceptionDate, DecimalPlaces, YearEndDate.
     * @param requestParameters
     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.
     * @param reportProgress flag to report request and response progress.
     */
    patchFund(requestParameters?: PatchFundRequestParams, observe?: 'body', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<Fund>;
    patchFund(requestParameters?: PatchFundRequestParams, observe?: 'response', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<HttpResponse<Fund>>;
    patchFund(requestParameters?: PatchFundRequestParams, observe?: 'events', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<HttpEvent<Fund>>;
    /**
     * [EXPERIMENTAL] SetShareClassInstruments: Set the ShareClass Instruments on a fund.
     * Update the ShareClass Instruments on an existing fund with the set of instruments provided.
     * @param requestParameters
     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.
     * @param reportProgress flag to report request and response progress.
     */
    setShareClassInstruments(requestParameters?: SetShareClassInstrumentsRequestParams, observe?: 'body', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<Fund>;
    setShareClassInstruments(requestParameters?: SetShareClassInstrumentsRequestParams, observe?: 'response', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<HttpResponse<Fund>>;
    setShareClassInstruments(requestParameters?: SetShareClassInstrumentsRequestParams, observe?: 'events', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<HttpEvent<Fund>>;
    /**
     * [EXPERIMENTAL] UpsertDiaryEntryTypeValuationPoint: Upsert Valuation Point.
     * Update or insert the estimate Valuation Point.                If the Valuation Point does not exist, this method will create it in estimate state.                If the Valuation Point already exists and is in estimate state, the Valuation Point will be updated with the newly specified information in this request.
     * @param requestParameters
     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.
     * @param reportProgress flag to report request and response progress.
     */
    upsertDiaryEntryTypeValuationPoint(requestParameters?: UpsertDiaryEntryTypeValuationPointRequestParams, observe?: 'body', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<DiaryEntry>;
    upsertDiaryEntryTypeValuationPoint(requestParameters?: UpsertDiaryEntryTypeValuationPointRequestParams, observe?: 'response', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<HttpResponse<DiaryEntry>>;
    upsertDiaryEntryTypeValuationPoint(requestParameters?: UpsertDiaryEntryTypeValuationPointRequestParams, observe?: 'events', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<HttpEvent<DiaryEntry>>;
    /**
     * [EXPERIMENTAL] UpsertFeeProperties: Upsert Fee properties.
     * Update or insert one or more properties onto a single Fee. A property will be updated if it  already exists and inserted if it does not. All properties must be of the domain \&#39;Fee\&#39;.                Upserting a property that exists for an Fee, with a null value, will delete the instance of the property for that group.       Properties have an &lt;i&gt;effectiveFrom&lt;/i&gt; datetime for which the property is valid, and an &lt;i&gt;effectiveUntil&lt;/i&gt;  datetime until which the property is valid. Not supplying an &lt;i&gt;effectiveUntil&lt;/i&gt; datetime results in the property being  valid indefinitely, or until the next &lt;i&gt;effectiveFrom&lt;/i&gt; datetime of the property.
     * @param requestParameters
     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.
     * @param reportProgress flag to report request and response progress.
     */
    upsertFeeProperties(requestParameters?: UpsertFeePropertiesRequestParams, observe?: 'body', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<FeeProperties>;
    upsertFeeProperties(requestParameters?: UpsertFeePropertiesRequestParams, observe?: 'response', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<HttpResponse<FeeProperties>>;
    upsertFeeProperties(requestParameters?: UpsertFeePropertiesRequestParams, observe?: 'events', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<HttpEvent<FeeProperties>>;
    /**
     * [EXPERIMENTAL] UpsertFundProperties: Upsert Fund properties.
     * Update or insert one or more properties onto a single Fund. A property will be updated if it  already exists and inserted if it does not. All properties must be of the domain \&#39;Fund\&#39;.                Upserting a property that exists for an Fund, with a null value, will delete the instance of the property for that group.                Properties have an &lt;i&gt;effectiveFrom&lt;/i&gt; datetime for which the property is valid, and an &lt;i&gt;effectiveUntil&lt;/i&gt;  datetime until which the property is valid. Not supplying an &lt;i&gt;effectiveUntil&lt;/i&gt; datetime results in the property being  valid indefinitely, or until the next &lt;i&gt;effectiveFrom&lt;/i&gt; datetime of the property.
     * @param requestParameters
     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.
     * @param reportProgress flag to report request and response progress.
     */
    upsertFundProperties(requestParameters?: UpsertFundPropertiesRequestParams, observe?: 'body', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<FundProperties>;
    upsertFundProperties(requestParameters?: UpsertFundPropertiesRequestParams, observe?: 'response', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<HttpResponse<FundProperties>>;
    upsertFundProperties(requestParameters?: UpsertFundPropertiesRequestParams, observe?: 'events', reportProgress?: boolean, options?: {
        httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
        context?: HttpContext;
        transferCache?: boolean;
    }): Observable<HttpEvent<FundProperties>>;
    static ɵfac: i0.ɵɵFactoryDeclaration<FundsService, [null, { optional: true; }, { optional: true; }]>;
    static ɵprov: i0.ɵɵInjectableDeclaration<FundsService>;
}
