| import "../types.tsp"; |
|
|
| namespace OpenMeter; |
|
|
| |
| * App capability. |
| * |
| * Capabilities only exist in config so they don't extend the Resource model. |
| */ |
| @friendlyName("AppCapability") |
| @example(#{ |
| type: AppCapabilityType.CollectPayments, |
| key: "stripe_collect_payment", |
| name: "Collect Payments", |
| description: "Stripe payments collects outstanding revenue with Stripe customer's default payment method.", |
| }) |
| model AppCapability { |
| |
| * The capability type. |
| */ |
| type: AppCapabilityType; |
|
|
| |
| * Key |
| */ |
| key: Key; |
|
|
| |
| * The capability name. |
| */ |
| name: string; |
|
|
| |
| * The capability description. |
| */ |
| description: string; |
| } |
|
|
| |
| * App capability type. |
| */ |
| @friendlyName("AppCapabilityType") |
| enum AppCapabilityType { |
| |
| * The app can report aggregated usage. |
| */ |
| ReportUsage: "reportUsage", |
|
|
| |
| * The app can report raw events. |
| */ |
| ReportEvents: "reportEvents", |
|
|
| |
| * The app can calculate tax. |
| */ |
| CalculateTax: "calculateTax", |
|
|
| |
| * The app can invoice customers. |
| */ |
| InvoiceCustomers: "invoiceCustomers", |
|
|
| |
| * The app can collect payments. |
| */ |
| CollectPayments: "collectPayments", |
| } |
|
|