import * as Options from '../options';
import { BaseService } from '../infrastructure';
import { PriceRuleDiscountCode } from '../interfaces';
/**
 * A service for manipulating Shopify Price Rules.
 */
export declare class PriceRuleDiscounts extends BaseService {
    constructor(shopDomain: string, accessToken: string);
    private getPath;
    /**
     * Returns a list of discount codes belonging to a specified price rule.
     * @param options Options for filtering the results.
     */
    list(priceRuleId: number, options?: Options.PriceRuleDiscountListOptions): Promise<PriceRuleDiscountCode[]>;
    /**
     * Creates a new discount code for a given price rule.
     * Note: Currently, you can only create a single discount code per price rule.
     */
    create(priceRuleId: number, discount: Partial<PriceRuleDiscountCode>): Promise<PriceRuleDiscountCode>;
    /**
     * Returns details about a single discount code object.
     */
    get(priceRuleId: number, id: number): Promise<PriceRuleDiscountCode>;
    /**
     * Search by discount code.
     *
     * The lookup endpoint does not return the discount code object, rather it returns the location of the
     * discount code in the location header.
     *
     * // https://your-store-domain.myshopify.com/admin/discount_codes/lookup?code=discountCode
     */
    lookup(priceRuleId: number, code: string): Promise<PriceRuleDiscountCode>;
    /**
     * Updates a single discount code for a given price rule.
     */
    update(priceRuleId: number, id: number, discount: Partial<PriceRuleDiscountCode>): Promise<PriceRuleDiscountCode>;
    /**
     * Deletes an existing discount code object.
     */
    delete(priceRuleId: number, id: number): Promise<void>;
}
export default PriceRuleDiscounts;
