UNPKG

@nikhil-patil/ngx-firefly-iii-api-client

Version:
221 lines (220 loc) 14.7 kB
import { HttpClient, HttpHeaders, HttpResponse, HttpEvent, HttpParameterCodec, HttpContext } from '@angular/common/http'; import { Observable } from 'rxjs'; import { RuleArray } from '../model/ruleArray'; import { RuleGroupArray } from '../model/ruleGroupArray'; import { RuleGroupSingle } from '../model/ruleGroupSingle'; import { RuleGroupStore } from '../model/ruleGroupStore'; import { RuleGroupUpdate } from '../model/ruleGroupUpdate'; import { TransactionArray } from '../model/transactionArray'; import { HttpConfiguration } from '../configuration'; import * as i0 from "@angular/core"; export declare class RuleGroupsService { protected httpClient: HttpClient; protected basePath: string; defaultHeaders: HttpHeaders; configuration: HttpConfiguration; encoder: HttpParameterCodec; constructor(httpClient: HttpClient, basePath: string | string[], configuration: HttpConfiguration); private addToHttpParams; private addToHttpParamsRecursive; /** * Delete a rule group. * Delete a rule group. * @param id The ID of the rule group. * @param xTraceId Unique identifier associated with this request. * @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. */ deleteRuleGroup(id: string, xTraceId?: string, observe?: 'body', reportProgress?: boolean, options?: { httpHeaderAccept?: 'application/json'; context?: HttpContext; transferCache?: boolean; }): Observable<any>; deleteRuleGroup(id: string, xTraceId?: string, observe?: 'response', reportProgress?: boolean, options?: { httpHeaderAccept?: 'application/json'; context?: HttpContext; transferCache?: boolean; }): Observable<HttpResponse<any>>; deleteRuleGroup(id: string, xTraceId?: string, observe?: 'events', reportProgress?: boolean, options?: { httpHeaderAccept?: 'application/json'; context?: HttpContext; transferCache?: boolean; }): Observable<HttpEvent<any>>; /** * Fire the rule group on your transactions. * Fire the rule group on your transactions. Changes will be made by the rules in the rule group! Limit the result if you want to. * @param id The ID of the rule group. * @param xTraceId Unique identifier associated with this request. * @param start A date formatted YYYY-MM-DD, to limit the transactions the actions will be applied to. Both the start date and the end date must be present. * @param end A date formatted YYYY-MM-DD, to limit the transactions the actions will be applied to. Both the start date and the end date must be present. * @param accounts Limit the triggering of the rule group to these asset accounts or liabilities. Only asset accounts and liabilities will be accepted. Other types will be silently dropped. * @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. */ fireRuleGroup(id: string, xTraceId?: string, start?: string, end?: string, accounts?: Array<number>, observe?: 'body', reportProgress?: boolean, options?: { httpHeaderAccept?: 'application/json'; context?: HttpContext; transferCache?: boolean; }): Observable<any>; fireRuleGroup(id: string, xTraceId?: string, start?: string, end?: string, accounts?: Array<number>, observe?: 'response', reportProgress?: boolean, options?: { httpHeaderAccept?: 'application/json'; context?: HttpContext; transferCache?: boolean; }): Observable<HttpResponse<any>>; fireRuleGroup(id: string, xTraceId?: string, start?: string, end?: string, accounts?: Array<number>, observe?: 'events', reportProgress?: boolean, options?: { httpHeaderAccept?: 'application/json'; context?: HttpContext; transferCache?: boolean; }): Observable<HttpEvent<any>>; /** * Get a single rule group. * Get a single rule group. This does not include the rules. For that, see below. * @param id The ID of the rule group. * @param xTraceId Unique identifier associated with this request. * @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. */ getRuleGroup(id: string, xTraceId?: string, observe?: 'body', reportProgress?: boolean, options?: { httpHeaderAccept?: 'application/vnd.api+json' | 'application/json'; context?: HttpContext; transferCache?: boolean; }): Observable<RuleGroupSingle>; getRuleGroup(id: string, xTraceId?: string, observe?: 'response', reportProgress?: boolean, options?: { httpHeaderAccept?: 'application/vnd.api+json' | 'application/json'; context?: HttpContext; transferCache?: boolean; }): Observable<HttpResponse<RuleGroupSingle>>; getRuleGroup(id: string, xTraceId?: string, observe?: 'events', reportProgress?: boolean, options?: { httpHeaderAccept?: 'application/vnd.api+json' | 'application/json'; context?: HttpContext; transferCache?: boolean; }): Observable<HttpEvent<RuleGroupSingle>>; /** * List rules in this rule group. * List rules in this rule group. * @param id The ID of the rule group. * @param xTraceId Unique identifier associated with this request. * @param limit Number of items per page. The default pagination is per 50 items. * @param page Page number. The default pagination is per 50 items. * @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. */ listRuleByGroup(id: string, xTraceId?: string, limit?: number, page?: number, observe?: 'body', reportProgress?: boolean, options?: { httpHeaderAccept?: 'application/vnd.api+json' | 'application/json'; context?: HttpContext; transferCache?: boolean; }): Observable<RuleArray>; listRuleByGroup(id: string, xTraceId?: string, limit?: number, page?: number, observe?: 'response', reportProgress?: boolean, options?: { httpHeaderAccept?: 'application/vnd.api+json' | 'application/json'; context?: HttpContext; transferCache?: boolean; }): Observable<HttpResponse<RuleArray>>; listRuleByGroup(id: string, xTraceId?: string, limit?: number, page?: number, observe?: 'events', reportProgress?: boolean, options?: { httpHeaderAccept?: 'application/vnd.api+json' | 'application/json'; context?: HttpContext; transferCache?: boolean; }): Observable<HttpEvent<RuleArray>>; /** * List all rule groups. * List all rule groups. * @param xTraceId Unique identifier associated with this request. * @param limit Number of items per page. The default pagination is per 50 items. * @param page Page number. The default pagination is per 50 items. * @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. */ listRuleGroup(xTraceId?: string, limit?: number, page?: number, observe?: 'body', reportProgress?: boolean, options?: { httpHeaderAccept?: 'application/vnd.api+json' | 'application/json'; context?: HttpContext; transferCache?: boolean; }): Observable<RuleGroupArray>; listRuleGroup(xTraceId?: string, limit?: number, page?: number, observe?: 'response', reportProgress?: boolean, options?: { httpHeaderAccept?: 'application/vnd.api+json' | 'application/json'; context?: HttpContext; transferCache?: boolean; }): Observable<HttpResponse<RuleGroupArray>>; listRuleGroup(xTraceId?: string, limit?: number, page?: number, observe?: 'events', reportProgress?: boolean, options?: { httpHeaderAccept?: 'application/vnd.api+json' | 'application/json'; context?: HttpContext; transferCache?: boolean; }): Observable<HttpEvent<RuleGroupArray>>; /** * Store a new rule group. * Creates a new rule group. The data required can be submitted as a JSON body or as a list of parameters. * @param ruleGroupStore JSON array or key&#x3D;value pairs with the necessary rule group information. See the model for the exact specifications. * @param xTraceId Unique identifier associated with this request. * @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. */ storeRuleGroup(ruleGroupStore: RuleGroupStore, xTraceId?: string, observe?: 'body', reportProgress?: boolean, options?: { httpHeaderAccept?: 'application/vnd.api+json' | 'application/json'; context?: HttpContext; transferCache?: boolean; }): Observable<RuleGroupSingle>; storeRuleGroup(ruleGroupStore: RuleGroupStore, xTraceId?: string, observe?: 'response', reportProgress?: boolean, options?: { httpHeaderAccept?: 'application/vnd.api+json' | 'application/json'; context?: HttpContext; transferCache?: boolean; }): Observable<HttpResponse<RuleGroupSingle>>; storeRuleGroup(ruleGroupStore: RuleGroupStore, xTraceId?: string, observe?: 'events', reportProgress?: boolean, options?: { httpHeaderAccept?: 'application/vnd.api+json' | 'application/json'; context?: HttpContext; transferCache?: boolean; }): Observable<HttpEvent<RuleGroupSingle>>; /** * Test which transactions would be hit by the rule group. No changes will be made. * Test which transactions would be hit by the rule group. No changes will be made. Limit the result if you want to. * @param id The ID of the rule group. * @param xTraceId Unique identifier associated with this request. * @param limit Number of items per page. The default pagination is per 50 items. * @param page Page number. The default pagination is per 50 items. * @param start A date formatted YYYY-MM-DD, to limit the transactions the test will be applied to. Both the start date and the end date must be present. * @param end A date formatted YYYY-MM-DD, to limit the transactions the test will be applied to. Both the start date and the end date must be present. * @param searchLimit Maximum number of transactions Firefly III will try. Don\&#39;t set this too high, or it will take Firefly III very long to run the test. I suggest a max of 200. * @param triggeredLimit Maximum number of transactions the rule group can actually trigger on, before Firefly III stops. I would suggest setting this to 10 or 15. Don\&#39;t go above the user\&#39;s page size, because browsing to page 2 or 3 of a test result would fire the test again, making any navigation efforts very slow. * @param accounts Limit the testing of the rule group to these asset accounts or liabilities. Only asset accounts and liabilities will be accepted. Other types will be silently dropped. * @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. */ testRuleGroup(id: string, xTraceId?: string, limit?: number, page?: number, start?: string, end?: string, searchLimit?: number, triggeredLimit?: number, accounts?: Array<number>, observe?: 'body', reportProgress?: boolean, options?: { httpHeaderAccept?: 'application/vnd.api+json' | 'application/json'; context?: HttpContext; transferCache?: boolean; }): Observable<TransactionArray>; testRuleGroup(id: string, xTraceId?: string, limit?: number, page?: number, start?: string, end?: string, searchLimit?: number, triggeredLimit?: number, accounts?: Array<number>, observe?: 'response', reportProgress?: boolean, options?: { httpHeaderAccept?: 'application/vnd.api+json' | 'application/json'; context?: HttpContext; transferCache?: boolean; }): Observable<HttpResponse<TransactionArray>>; testRuleGroup(id: string, xTraceId?: string, limit?: number, page?: number, start?: string, end?: string, searchLimit?: number, triggeredLimit?: number, accounts?: Array<number>, observe?: 'events', reportProgress?: boolean, options?: { httpHeaderAccept?: 'application/vnd.api+json' | 'application/json'; context?: HttpContext; transferCache?: boolean; }): Observable<HttpEvent<TransactionArray>>; /** * Update existing rule group. * Update existing rule group. * @param id The ID of the rule group. * @param ruleGroupUpdate JSON array with updated rule group information. See the model for the exact specifications. * @param xTraceId Unique identifier associated with this request. * @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. */ updateRuleGroup(id: string, ruleGroupUpdate: RuleGroupUpdate, xTraceId?: string, observe?: 'body', reportProgress?: boolean, options?: { httpHeaderAccept?: 'application/vnd.api+json' | 'application/json'; context?: HttpContext; transferCache?: boolean; }): Observable<RuleGroupSingle>; updateRuleGroup(id: string, ruleGroupUpdate: RuleGroupUpdate, xTraceId?: string, observe?: 'response', reportProgress?: boolean, options?: { httpHeaderAccept?: 'application/vnd.api+json' | 'application/json'; context?: HttpContext; transferCache?: boolean; }): Observable<HttpResponse<RuleGroupSingle>>; updateRuleGroup(id: string, ruleGroupUpdate: RuleGroupUpdate, xTraceId?: string, observe?: 'events', reportProgress?: boolean, options?: { httpHeaderAccept?: 'application/vnd.api+json' | 'application/json'; context?: HttpContext; transferCache?: boolean; }): Observable<HttpEvent<RuleGroupSingle>>; static ɵfac: i0.ɵɵFactoryDeclaration<RuleGroupsService, [null, { optional: true; }, { optional: true; }]>; static ɵprov: i0.ɵɵInjectableDeclaration<RuleGroupsService>; }