import * as z from "zod/v4-mini"; import { RFCDate } from "../../types/rfcdate.js"; import { ProductBillingType } from "../components/productbillingtype.js"; import { TimeInterval } from "../components/timeinterval.js"; /** * Filter by organization ID. */ export type MetricsGetQueryParamOrganizationIDFilter = string | Array; /** * Filter by product ID. */ export type MetricsGetQueryParamProductIDFilter = string | Array; /** * Filter by billing type. `recurring` will filter data corresponding to subscriptions creations or renewals. `one_time` will filter data corresponding to one-time purchases. */ export type QueryParamProductBillingTypeFilter = ProductBillingType | Array; /** * Filter by customer ID. */ export type MetricsGetQueryParamCustomerIDFilter = string | Array; export type MetricsGetRequest = { /** * Start date. */ startDate: RFCDate; /** * End date. */ endDate: RFCDate; /** * Timezone to use for the timestamps. Default is UTC. */ timezone?: string | undefined; /** * Interval between two timestamps. */ interval: TimeInterval; /** * Filter by organization ID. */ organizationId?: string | Array | null | undefined; /** * Filter by product ID. */ productId?: string | Array | null | undefined; /** * Filter by billing type. `recurring` will filter data corresponding to subscriptions creations or renewals. `one_time` will filter data corresponding to one-time purchases. */ billingType?: ProductBillingType | Array | null | undefined; /** * Filter by customer ID. */ customerId?: string | Array | null | undefined; /** * List of metric slugs to focus on. When provided, only the queries needed for these metrics will be executed, improving performance. If not provided, all metrics are returned. */ metrics?: Array | null | undefined; }; /** @internal */ export type MetricsGetQueryParamOrganizationIDFilter$Outbound = string | Array; /** @internal */ export declare const MetricsGetQueryParamOrganizationIDFilter$outboundSchema: z.ZodMiniType; export declare function metricsGetQueryParamOrganizationIDFilterToJSON(metricsGetQueryParamOrganizationIDFilter: MetricsGetQueryParamOrganizationIDFilter): string; /** @internal */ export type MetricsGetQueryParamProductIDFilter$Outbound = string | Array; /** @internal */ export declare const MetricsGetQueryParamProductIDFilter$outboundSchema: z.ZodMiniType; export declare function metricsGetQueryParamProductIDFilterToJSON(metricsGetQueryParamProductIDFilter: MetricsGetQueryParamProductIDFilter): string; /** @internal */ export type QueryParamProductBillingTypeFilter$Outbound = string | Array; /** @internal */ export declare const QueryParamProductBillingTypeFilter$outboundSchema: z.ZodMiniType; export declare function queryParamProductBillingTypeFilterToJSON(queryParamProductBillingTypeFilter: QueryParamProductBillingTypeFilter): string; /** @internal */ export type MetricsGetQueryParamCustomerIDFilter$Outbound = string | Array; /** @internal */ export declare const MetricsGetQueryParamCustomerIDFilter$outboundSchema: z.ZodMiniType; export declare function metricsGetQueryParamCustomerIDFilterToJSON(metricsGetQueryParamCustomerIDFilter: MetricsGetQueryParamCustomerIDFilter): string; /** @internal */ export type MetricsGetRequest$Outbound = { start_date: string; end_date: string; timezone: string; interval: string; organization_id?: string | Array | null | undefined; product_id?: string | Array | null | undefined; billing_type?: string | Array | null | undefined; customer_id?: string | Array | null | undefined; metrics?: Array | null | undefined; }; /** @internal */ export declare const MetricsGetRequest$outboundSchema: z.ZodMiniType; export declare function metricsGetRequestToJSON(metricsGetRequest: MetricsGetRequest): string; //# sourceMappingURL=metricsget.d.ts.map