nylas
Version:
A NodeJS wrapper for the Nylas REST API for email, contacts, and calendar.
83 lines (82 loc) • 2.65 kB
TypeScript
import { Overrides } from '../config.js';
import { CreateRuleRequest, ListRuleEvaluationsQueryParams, ListRulesQueryParams, Rule, RuleEvaluation, UpdateRuleRequest } from '../models/rules.js';
import { NylasBaseResponse, NylasListResponse, NylasResponse } from '../models/response.js';
import { AsyncListResponse, Resource } from './resource.js';
/**
* @property queryParams The query parameters to include in the request.
*/
interface ListRulesParams {
queryParams?: ListRulesQueryParams;
}
/**
* @property ruleId The ID of the rule to retrieve.
*/
interface FindRuleParams {
ruleId: string;
}
/**
* @property requestBody The values to create the rule with.
*/
interface CreateRuleParams {
requestBody: CreateRuleRequest;
}
/**
* @property ruleId The ID of the rule to update.
* @property requestBody The values to update the rule with.
*/
interface UpdateRuleParams {
ruleId: string;
requestBody: UpdateRuleRequest;
}
/**
* @property ruleId The ID of the rule to delete.
*/
interface DestroyRuleParams {
ruleId: string;
}
/**
* @property identifier The identifier of the grant to list rule evaluations for.
* @property queryParams The query parameters to include in the request.
*/
interface ListRuleEvaluationsParams {
identifier: string;
queryParams?: ListRuleEvaluationsQueryParams;
}
/**
* Nylas Agent Account Rules API
*
* Rules define inbound and outbound filtering logic for Agent Accounts.
*/
export declare class Rules extends Resource {
/**
* Return all rules.
* @return The list of rules.
*/
list({ queryParams, overrides, }?: ListRulesParams & Overrides): AsyncListResponse<NylasListResponse<Rule>>;
/**
* Return a rule.
* @return The rule.
*/
find({ ruleId, overrides, }: FindRuleParams & Overrides): Promise<NylasResponse<Rule>>;
/**
* Create a rule.
* @return The created rule.
*/
create({ requestBody, overrides, }: CreateRuleParams & Overrides): Promise<NylasResponse<Rule>>;
/**
* Update a rule.
* @return The updated rule.
*/
update({ ruleId, requestBody, overrides, }: UpdateRuleParams & Overrides): Promise<NylasResponse<Rule>>;
/**
* Delete a rule.
* @return The deletion response.
*/
destroy({ ruleId, overrides, }: DestroyRuleParams & Overrides): Promise<NylasBaseResponse>;
/**
* Return rule evaluation records for a grant.
* @return The list of rule evaluation records.
*/
listEvaluations({ identifier, queryParams, overrides, }: ListRuleEvaluationsParams & Overrides): AsyncListResponse<NylasListResponse<RuleEvaluation>>;
}
export {};