import { ActivateLicenseInput, CreateLicenseInput, GetLicenseQueryVariables, ListLicensesQueryVariables, UpdateLicenseInput } from '../../gen/graphql';
import { AbowireGraphQLClient } from '../../graphql/graphql-client';
export declare class LicenseApi {
    private graphQL;
    constructor(graphQL: AbowireGraphQLClient);
    create(input: CreateLicenseInput): Promise<{
        __typename?: "License" | undefined;
        id: string;
        status: import("../../gen/graphql").LicenseStatus;
        code?: string | null | undefined;
        activations?: number | null | undefined;
        activationsLeft?: number | null | undefined;
        expirationDate?: any;
        units?: string[] | null | undefined;
        metadata?: any;
        createdAt?: any;
        updatedAt?: any;
        subscription: {
            __typename?: "Subscription" | undefined;
            id: string;
            customer: {
                __typename?: "Customer" | undefined;
                id: string;
                name: string;
            };
            product: {
                __typename?: "Product" | undefined;
                name: string;
                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;
                    }[];
                }[];
            };
        };
        licenseUser?: {
            __typename?: "LicenseUser" | undefined;
            id: string;
            name: string;
        } | null | undefined;
    }>;
    update(id: string, input: UpdateLicenseInput): Promise<{
        __typename?: "License" | undefined;
        id: string;
        status: import("../../gen/graphql").LicenseStatus;
        code?: string | null | undefined;
        activations?: number | null | undefined;
        activationsLeft?: number | null | undefined;
        expirationDate?: any;
        units?: string[] | null | undefined;
        metadata?: any;
        createdAt?: any;
        updatedAt?: any;
        subscription: {
            __typename?: "Subscription" | undefined;
            id: string;
            customer: {
                __typename?: "Customer" | undefined;
                id: string;
                name: string;
            };
            product: {
                __typename?: "Product" | undefined;
                name: string;
                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;
                    }[];
                }[];
            };
        };
        licenseUser?: {
            __typename?: "LicenseUser" | undefined;
            id: string;
            name: string;
        } | null | undefined;
    }>;
    activate(input: ActivateLicenseInput): Promise<{
        __typename?: "License" | undefined;
        id: string;
        status: import("../../gen/graphql").LicenseStatus;
        code?: string | null | undefined;
        activations?: number | null | undefined;
        activationsLeft?: number | null | undefined;
        expirationDate?: any;
        units?: string[] | null | undefined;
        metadata?: any;
        createdAt?: any;
        updatedAt?: any;
        subscription: {
            __typename?: "Subscription" | undefined;
            id: string;
            customer: {
                __typename?: "Customer" | undefined;
                id: string;
                name: string;
            };
            product: {
                __typename?: "Product" | undefined;
                name: string;
                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;
                    }[];
                }[];
            };
        };
        licenseUser?: {
            __typename?: "LicenseUser" | undefined;
            id: string;
            name: string;
        } | null | undefined;
    }>;
    get(id: string, input?: Partial<GetLicenseQueryVariables>): Promise<{
        __typename?: "License" | undefined;
        id: string;
        status: import("../../gen/graphql").LicenseStatus;
        code?: string | null | undefined;
        activations?: number | null | undefined;
        activationsLeft?: number | null | undefined;
        expirationDate?: any;
        units?: string[] | null | undefined;
        metadata?: any;
        createdAt?: any;
        updatedAt?: any;
        subscription: {
            __typename?: "Subscription" | undefined;
            id: string;
            customer: {
                __typename?: "Customer" | undefined;
                id: string;
                name: string;
            };
            product: {
                __typename?: "Product" | undefined;
                name: string;
                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;
                    }[];
                }[];
            };
        };
        licenseUser?: {
            __typename?: "LicenseUser" | undefined;
            id: string;
            name: string;
        } | null | undefined;
    }>;
    list(input?: Partial<ListLicensesQueryVariables>): Promise<{
        __typename?: "LicenseList" | undefined;
        count: number;
        total: number;
        cursor?: string | null | undefined;
        items: {
            __typename?: "License" | undefined;
            id: string;
            status: import("../../gen/graphql").LicenseStatus;
            code?: string | null | undefined;
            activations?: number | null | undefined;
            activationsLeft?: number | null | undefined;
            expirationDate?: any;
            units?: string[] | null | undefined;
            metadata?: any;
            createdAt?: any;
            updatedAt?: any;
            subscription: {
                __typename?: "Subscription" | undefined;
                id: string;
                customer: {
                    __typename?: "Customer" | undefined;
                    id: string;
                    name: string;
                };
                product: {
                    __typename?: "Product" | undefined;
                    name: string;
                    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;
                        }[];
                    }[];
                };
            };
            licenseUser?: {
                __typename?: "LicenseUser" | undefined;
                id: string;
                name: string;
            } | null | undefined;
        }[];
    }>;
}
