abowire
Version:
This is the official **Abowire Javascript SDK**, which makes it easy to connect to the Abowire **GraphQL API** and includes all the required dependencies you need.
537 lines (536 loc) • 21 kB
TypeScript
import { CreateProductInput, GetProductQueryVariables, ListProductsQueryVariables, UpdateProductInput } from '../../gen/graphql';
import { AbowireGraphQLClient } from '../../graphql/graphql-client';
export declare class ProductApi {
private graphQL;
constructor(graphQL: AbowireGraphQLClient);
create(input: CreateProductInput): Promise<{
__typename?: "Product" | undefined;
id: string;
name: string;
sku: string;
currency: any;
taxRateCode?: import("../../gen/graphql").TaxRateCode | null | undefined;
metadata?: any;
createdAt?: any;
isActive: boolean;
plan: {
__typename?: "Plan" | undefined;
billingDay?: number | null | undefined;
billingTerms?: import("../../gen/graphql").BillingTerms | null | undefined;
recurrency: {
__typename?: "Timeframe" | undefined;
amount?: number | null | undefined;
unit?: import("../../gen/graphql").TimeUnit | null | undefined;
};
paymentTerms?: {
__typename?: "Timeframe" | undefined;
amount?: number | null | undefined;
unit?: import("../../gen/graphql").TimeUnit | null | undefined;
} | null | undefined;
cancellationNotice?: {
__typename?: "Timeframe" | undefined;
amount?: number | null | undefined;
unit?: import("../../gen/graphql").TimeUnit | null | undefined;
} | null | undefined;
maxDuration?: {
__typename?: "Timeframe" | undefined;
amount?: number | null | undefined;
unit?: import("../../gen/graphql").TimeUnit | null | undefined;
} | null | undefined;
freeTrial?: {
__typename?: "Timeframe" | undefined;
amount?: number | null | undefined;
unit?: import("../../gen/graphql").TimeUnit | null | undefined;
} | null | undefined;
};
pricing: {
__typename?: "Pricing" | undefined;
description?: string | null | undefined;
type: import("../../gen/graphql").PricingType;
price?: number | null | undefined;
unit?: string | null | undefined;
strategy: import("../../gen/graphql").PricingStrategy;
chargeOnce?: boolean | null | undefined;
tiers: {
__typename?: "PricingTier" | undefined;
from: number;
to?: number | null | undefined;
price: number;
}[];
}[];
licensing?: {
__typename?: "Licensing" | undefined;
isActive?: boolean | null | undefined;
maxActivations?: number | null | undefined;
expirationDate?: any;
codeStrategy: import("../../gen/graphql").LicensingCodeStrategy;
codeLength?: number | null | undefined;
maxDuration?: {
__typename?: "Timeframe" | undefined;
unit?: import("../../gen/graphql").TimeUnit | null | undefined;
amount?: number | null | undefined;
} | null | undefined;
} | null | undefined;
subscriptions: {
__typename?: "SubscriptionList" | undefined;
count: number;
total: number;
cursor?: string | null | undefined;
items: {
__typename?: "Subscription" | undefined;
id: string;
product: {
__typename?: "Product" | undefined;
name: string;
};
}[];
};
addons: {
__typename?: "ProductList" | undefined;
count: number;
total: number;
cursor?: string | null | undefined;
items: {
__typename?: "Product" | undefined;
id: string;
name: string;
}[];
};
canUpgradeTo: {
__typename?: "ProductList" | undefined;
count: number;
total: number;
cursor?: string | null | undefined;
items: {
__typename?: "Product" | undefined;
id: string;
name: string;
}[];
};
canDowngradeTo: {
__typename?: "ProductList" | undefined;
count: number;
total: number;
cursor?: string | null | undefined;
items: {
__typename?: "Product" | undefined;
id: string;
name: string;
}[];
};
nextProduct?: {
__typename?: "Product" | undefined;
id: string;
name: string;
} | null | undefined;
capabilities?: {
__typename?: "ProductCapability" | undefined;
name: string;
isActive: boolean;
usageLimit?: ({
__typename?: "SubscriptionUsage" | undefined;
unit: string;
amount: number;
} | null)[] | null | undefined;
}[] | null | undefined;
}>;
update(id: string, input: UpdateProductInput): Promise<{
__typename?: "Product" | undefined;
id: string;
name: string;
sku: string;
currency: any;
taxRateCode?: import("../../gen/graphql").TaxRateCode | null | undefined;
metadata?: any;
createdAt?: any;
isActive: boolean;
plan: {
__typename?: "Plan" | undefined;
billingDay?: number | null | undefined;
billingTerms?: import("../../gen/graphql").BillingTerms | null | undefined;
recurrency: {
__typename?: "Timeframe" | undefined;
amount?: number | null | undefined;
unit?: import("../../gen/graphql").TimeUnit | null | undefined;
};
paymentTerms?: {
__typename?: "Timeframe" | undefined;
amount?: number | null | undefined;
unit?: import("../../gen/graphql").TimeUnit | null | undefined;
} | null | undefined;
cancellationNotice?: {
__typename?: "Timeframe" | undefined;
amount?: number | null | undefined;
unit?: import("../../gen/graphql").TimeUnit | null | undefined;
} | null | undefined;
maxDuration?: {
__typename?: "Timeframe" | undefined;
amount?: number | null | undefined;
unit?: import("../../gen/graphql").TimeUnit | null | undefined;
} | null | undefined;
freeTrial?: {
__typename?: "Timeframe" | undefined;
amount?: number | null | undefined;
unit?: import("../../gen/graphql").TimeUnit | null | undefined;
} | null | undefined;
};
pricing: {
__typename?: "Pricing" | undefined;
description?: string | null | undefined;
type: import("../../gen/graphql").PricingType;
price?: number | null | undefined;
unit?: string | null | undefined;
strategy: import("../../gen/graphql").PricingStrategy;
chargeOnce?: boolean | null | undefined;
tiers: {
__typename?: "PricingTier" | undefined;
from: number;
to?: number | null | undefined;
price: number;
}[];
}[];
licensing?: {
__typename?: "Licensing" | undefined;
isActive?: boolean | null | undefined;
maxActivations?: number | null | undefined;
expirationDate?: any;
codeStrategy: import("../../gen/graphql").LicensingCodeStrategy;
codeLength?: number | null | undefined;
maxDuration?: {
__typename?: "Timeframe" | undefined;
unit?: import("../../gen/graphql").TimeUnit | null | undefined;
amount?: number | null | undefined;
} | null | undefined;
} | null | undefined;
subscriptions: {
__typename?: "SubscriptionList" | undefined;
count: number;
total: number;
cursor?: string | null | undefined;
items: {
__typename?: "Subscription" | undefined;
id: string;
product: {
__typename?: "Product" | undefined;
name: string;
};
}[];
};
addons: {
__typename?: "ProductList" | undefined;
count: number;
total: number;
cursor?: string | null | undefined;
items: {
__typename?: "Product" | undefined;
id: string;
name: string;
}[];
};
canUpgradeTo: {
__typename?: "ProductList" | undefined;
count: number;
total: number;
cursor?: string | null | undefined;
items: {
__typename?: "Product" | undefined;
id: string;
name: string;
}[];
};
canDowngradeTo: {
__typename?: "ProductList" | undefined;
count: number;
total: number;
cursor?: string | null | undefined;
items: {
__typename?: "Product" | undefined;
id: string;
name: string;
}[];
};
nextProduct?: {
__typename?: "Product" | undefined;
id: string;
name: string;
} | null | undefined;
capabilities?: {
__typename?: "ProductCapability" | undefined;
name: string;
isActive: boolean;
usageLimit?: ({
__typename?: "SubscriptionUsage" | undefined;
unit: string;
amount: number;
} | null)[] | null | undefined;
}[] | null | undefined;
}>;
get(id: string, input?: Partial<GetProductQueryVariables>): Promise<{
__typename?: "Product" | undefined;
id: string;
name: string;
sku: string;
currency: any;
taxRateCode?: import("../../gen/graphql").TaxRateCode | null | undefined;
metadata?: any;
createdAt?: any;
isActive: boolean;
plan: {
__typename?: "Plan" | undefined;
billingDay?: number | null | undefined;
billingTerms?: import("../../gen/graphql").BillingTerms | null | undefined;
recurrency: {
__typename?: "Timeframe" | undefined;
amount?: number | null | undefined;
unit?: import("../../gen/graphql").TimeUnit | null | undefined;
};
paymentTerms?: {
__typename?: "Timeframe" | undefined;
amount?: number | null | undefined;
unit?: import("../../gen/graphql").TimeUnit | null | undefined;
} | null | undefined;
cancellationNotice?: {
__typename?: "Timeframe" | undefined;
amount?: number | null | undefined;
unit?: import("../../gen/graphql").TimeUnit | null | undefined;
} | null | undefined;
maxDuration?: {
__typename?: "Timeframe" | undefined;
amount?: number | null | undefined;
unit?: import("../../gen/graphql").TimeUnit | null | undefined;
} | null | undefined;
freeTrial?: {
__typename?: "Timeframe" | undefined;
amount?: number | null | undefined;
unit?: import("../../gen/graphql").TimeUnit | null | undefined;
} | null | undefined;
};
pricing: {
__typename?: "Pricing" | undefined;
description?: string | null | undefined;
type: import("../../gen/graphql").PricingType;
price?: number | null | undefined;
unit?: string | null | undefined;
strategy: import("../../gen/graphql").PricingStrategy;
chargeOnce?: boolean | null | undefined;
tiers: {
__typename?: "PricingTier" | undefined;
from: number;
to?: number | null | undefined;
price: number;
}[];
}[];
licensing?: {
__typename?: "Licensing" | undefined;
isActive?: boolean | null | undefined;
maxActivations?: number | null | undefined;
expirationDate?: any;
codeStrategy: import("../../gen/graphql").LicensingCodeStrategy;
codeLength?: number | null | undefined;
maxDuration?: {
__typename?: "Timeframe" | undefined;
unit?: import("../../gen/graphql").TimeUnit | null | undefined;
amount?: number | null | undefined;
} | null | undefined;
} | null | undefined;
subscriptions: {
__typename?: "SubscriptionList" | undefined;
count: number;
total: number;
cursor?: string | null | undefined;
items: {
__typename?: "Subscription" | undefined;
id: string;
product: {
__typename?: "Product" | undefined;
name: string;
};
}[];
};
addons: {
__typename?: "ProductList" | undefined;
count: number;
total: number;
cursor?: string | null | undefined;
items: {
__typename?: "Product" | undefined;
id: string;
name: string;
}[];
};
canUpgradeTo: {
__typename?: "ProductList" | undefined;
count: number;
total: number;
cursor?: string | null | undefined;
items: {
__typename?: "Product" | undefined;
id: string;
name: string;
}[];
};
canDowngradeTo: {
__typename?: "ProductList" | undefined;
count: number;
total: number;
cursor?: string | null | undefined;
items: {
__typename?: "Product" | undefined;
id: string;
name: string;
}[];
};
nextProduct?: {
__typename?: "Product" | undefined;
id: string;
name: string;
} | null | undefined;
capabilities?: {
__typename?: "ProductCapability" | undefined;
name: string;
isActive: boolean;
usageLimit?: ({
__typename?: "SubscriptionUsage" | undefined;
unit: string;
amount: number;
} | null)[] | null | undefined;
}[] | null | undefined;
}>;
list(input?: Partial<ListProductsQueryVariables>): Promise<{
__typename?: "ProductList" | undefined;
count: number;
total: number;
cursor?: string | null | undefined;
items: {
__typename?: "Product" | undefined;
id: string;
name: string;
sku: string;
currency: any;
taxRateCode?: import("../../gen/graphql").TaxRateCode | null | undefined;
metadata?: any;
createdAt?: any;
isActive: boolean;
plan: {
__typename?: "Plan" | undefined;
billingDay?: number | null | undefined;
billingTerms?: import("../../gen/graphql").BillingTerms | null | undefined;
recurrency: {
__typename?: "Timeframe" | undefined;
amount?: number | null | undefined;
unit?: import("../../gen/graphql").TimeUnit | null | undefined;
};
paymentTerms?: {
__typename?: "Timeframe" | undefined;
amount?: number | null | undefined;
unit?: import("../../gen/graphql").TimeUnit | null | undefined;
} | null | undefined;
cancellationNotice?: {
__typename?: "Timeframe" | undefined;
amount?: number | null | undefined;
unit?: import("../../gen/graphql").TimeUnit | null | undefined;
} | null | undefined;
maxDuration?: {
__typename?: "Timeframe" | undefined;
amount?: number | null | undefined;
unit?: import("../../gen/graphql").TimeUnit | null | undefined;
} | null | undefined;
freeTrial?: {
__typename?: "Timeframe" | undefined;
amount?: number | null | undefined;
unit?: import("../../gen/graphql").TimeUnit | null | undefined;
} | null | undefined;
};
pricing: {
__typename?: "Pricing" | undefined;
description?: string | null | undefined;
type: import("../../gen/graphql").PricingType;
price?: number | null | undefined;
unit?: string | null | undefined;
strategy: import("../../gen/graphql").PricingStrategy;
chargeOnce?: boolean | null | undefined;
tiers: {
__typename?: "PricingTier" | undefined;
from: number;
to?: number | null | undefined;
price: number;
}[];
}[];
licensing?: {
__typename?: "Licensing" | undefined;
isActive?: boolean | null | undefined;
maxActivations?: number | null | undefined;
expirationDate?: any;
codeStrategy: import("../../gen/graphql").LicensingCodeStrategy;
codeLength?: number | null | undefined;
maxDuration?: {
__typename?: "Timeframe" | undefined;
unit?: import("../../gen/graphql").TimeUnit | null | undefined;
amount?: number | null | undefined;
} | null | undefined;
} | null | undefined;
subscriptions: {
__typename?: "SubscriptionList" | undefined;
count: number;
total: number;
cursor?: string | null | undefined;
items: {
__typename?: "Subscription" | undefined;
id: string;
product: {
__typename?: "Product" | undefined;
name: string;
};
}[];
};
addons: {
__typename?: "ProductList" | undefined;
count: number;
total: number;
cursor?: string | null | undefined;
items: {
__typename?: "Product" | undefined;
id: string;
name: string;
}[];
};
canUpgradeTo: {
__typename?: "ProductList" | undefined;
count: number;
total: number;
cursor?: string | null | undefined;
items: {
__typename?: "Product" | undefined;
id: string;
name: string;
}[];
};
canDowngradeTo: {
__typename?: "ProductList" | undefined;
count: number;
total: number;
cursor?: string | null | undefined;
items: {
__typename?: "Product" | undefined;
id: string;
name: string;
}[];
};
nextProduct?: {
__typename?: "Product" | undefined;
id: string;
name: string;
} | null | undefined;
capabilities?: {
__typename?: "ProductCapability" | undefined;
name: string;
isActive: boolean;
usageLimit?: ({
__typename?: "SubscriptionUsage" | undefined;
unit: string;
amount: number;
} | null)[] | null | undefined;
}[] | null | undefined;
}[];
}>;
}