import type { Plan } from '@heroku/types/3.sdk'; import type { ResourceCtx } from '../../../core/extend-resource.js'; import type { AddOnOptions, ResolveAddonOptions } from './types.js'; /** * Subset of {@link ResolveAddonOptions} accepted by * {@link listPlansForAddon}. The `addonService` filter is intentionally * omitted: once you've pinned an add-on identity, filtering its * resolution by service name is nonsensical. */ export type ListPlansForAddonOptions = Pick; /** * List the plans available for an add-on service, sorted ascending by * `price.cents`. Plans without a price (or with equal prices) are * returned later in the list. */ export declare function listPlans(ctx: Pick, serviceIdentity: string, options?: AddOnOptions): Promise; /** * List the plans available for the add-on service of an existing * add-on, sorted ascending by `price.cents`. * * Convenience wrapper that resolves the add-on first to look up its * `addon_service.name`, then delegates to `listPlans`. Saves callers * the dance of fetching the add-on, plucking its service id/name, and * passing it through. * * `addonIdentity` accepts the same forms as `resolveAddon`. * * Pass `appIdentity` via `options` when the add-on identity is * scoped to an app (same semantics as `resolveAddon`). */ export declare function listPlansForAddon(ctx: Pick, addonIdentity: string, options?: ListPlansForAddonOptions): Promise;