UNPKG

@hso/d365-cli

Version:

Dynamics 365 Command Line Interface for TypeScript projects for Dataverse

48 lines (41 loc) 2.28 kB
interface Expand { attribute: string; select: string[]; } interface SystemQueryOptions { select: string[]; expands?: Expand[]; } type Order = 'asc' | 'desc'; interface OrderBy { attribute: string; order?: Order; } // https://docs.microsoft.com/en-us/dynamics365/customer-engagement/web-api/tomorrow?view=dynamics-ce-odata-9 type QueryFunction = 'Above' | 'AboveOrEqual' | 'Between' | 'Contains' | 'ContainValues' | 'DoesNotContainValues' | 'EqualBusinessId' | 'EqualUserId' | 'EqualUserLanguage' | 'EqualUserOrUserHierarchy' | 'EqualUserOrHierarchyAndTeams' | 'EqualUserOrUserTeams' | 'EqualUserTeams' | 'In' | 'InFiscalPeriod' | 'InFiscalPeriodAndYear' | 'InFiscalYear' | 'InOrAfterFiscalPeriodAndYear' | 'InOrBeforeFiscalPeriodAndYear' | 'Last7Days' | 'LastFiscalPeriod' | 'LastFiscalYear' | 'LastMonth' | 'LastWeek' | 'LastXDays' | 'LastXFiscalPeriods' | 'LastXFiscalYears' | 'LastXHours' | 'LastXMonths' | 'LastXWeeks' | 'LastXYears' | 'LastYear' | 'Next7Days' | 'NextFiscalPeriod' | 'NextFiscalYear' | 'NextMonth' | 'NextWeek' | 'NextXDays' | 'NextXFiscalPeriods' | 'NextXFiscalYears' | 'NextXHours' | 'NextXMonths' | 'NextXWeeks' | 'NextXYears' | 'NextYear' | 'NotBetween' | 'NotEqualBusinessId' | 'NotEqualUserId' | 'NotIn' | 'NotUnder' | 'OlderThanXDays' | 'OlderThanXHours' | 'OlderThanXMinutes' | 'OlderThanXMonths' | 'OlderThanXWeeks' | 'OlderThanXYears' | 'On' | 'OnOrAfter' | 'OnOrBefore' | 'ThisFiscalPerios' | 'ThisFiscalYear' | 'ThisMonth' | 'ThisWeek' | 'ThisYear' | 'Today' | 'Tomorrow' | 'Under' | 'UnderOrEqual' | 'Yesterday'; type FilterCondition = 'eq' | 'ne'| 'gt'| 'ge'| 'lt'| 'le'; // typeof filterConditions[number]; See WebApi const filterConditions /* eslint-disable @typescript-eslint/no-explicit-any */ interface Condition { attribute: string; operator?: FilterCondition | QueryFunction; value?: any; } /* eslint-enable @typescript-eslint/no-explicit-any */ type FilterType = 'and' | 'or' | 'not'; interface Filter { type?: FilterType; conditions: Condition[]; filters?: Filter[]; } interface MultipleSystemQueryOptions extends SystemQueryOptions { filters?: Filter[]; orders?: OrderBy[]; top?: number; }