import { ProductVariantModelFragment } from '../../types/ShopifyGraphQLAdminAPI';
import { ShopifyObjectModel } from './ShopifyObject';
export declare const OmittedProductVariantKeys: readonly ["__typename", "selectedOptions", "inventoryItem", "fulfillmentService"];
export declare type OmittedProductVariantKey = typeof OmittedProductVariantKeys[number];
declare type RemainingProductVariantKey = Exclude<keyof ProductVariantModelFragment, OmittedProductVariantKey>;
export declare type ProductVariantProps = Omit<ProductVariantModelFragment, OmittedProductVariantKey> & {
    'selectedOptions.1': ProductVariantModelFragment['selectedOptions'][0]['value'];
    'selectedOptions.2': ProductVariantModelFragment['selectedOptions'][1]['value'];
    'selectedOptions.3': ProductVariantModelFragment['selectedOptions'][2]['value'];
    'fulfillmentService.id': NonNullable<ProductVariantModelFragment['fulfillmentService']>['id'] | undefined;
    'product.id': ProductVariantModelFragment['product']['id'];
    'inventoryItem.id': ProductVariantModelFragment['inventoryItem']['id'];
    'inventoryItem.createdAt': ProductVariantModelFragment['inventoryItem']['createdAt'];
    'inventoryItem.updatedAt': ProductVariantModelFragment['inventoryItem']['updatedAt'];
    'inventoryItem.legacyResourceId': ProductVariantModelFragment['inventoryItem']['legacyResourceId'];
    'duplicateSkuCount': ProductVariantModelFragment['inventoryItem']['duplicateSkuCount'];
    'inventoryHistoryUrl': ProductVariantModelFragment['inventoryItem']['inventoryHistoryUrl'];
    'locationsCount': ProductVariantModelFragment['inventoryItem']['locationsCount'];
    'harmonizedSystemCode': ProductVariantModelFragment['inventoryItem']['harmonizedSystemCode'];
    'countryCodeOfOrigin': ProductVariantModelFragment['inventoryItem']['countryCodeOfOrigin'];
    'provinceCodeOfOrigin': ProductVariantModelFragment['inventoryItem']['provinceCodeOfOrigin'];
    'tracked': ProductVariantModelFragment['inventoryItem']['tracked'];
    'trackedEditable': ProductVariantModelFragment['inventoryItem']['trackedEditable'];
    'unitCost.amount': NonNullable<ProductVariantModelFragment['inventoryItem']['unitCost']>['amount'] | undefined;
    'unitCost.currencyCode': NonNullable<ProductVariantModelFragment['inventoryItem']['unitCost']>['currencyCode'] | undefined;
};
export declare const ProductVariantKeys: readonly [...RemainingProductVariantKey[], "selectedOptions.1", "selectedOptions.2", "selectedOptions.3", "fulfillmentService.id", "product.id", "inventoryItem.id", "inventoryItem.createdAt", "inventoryItem.updatedAt", "inventoryItem.legacyResourceId", "duplicateSkuCount", "inventoryHistoryUrl", "locationsCount", "harmonizedSystemCode", "countryCodeOfOrigin", "provinceCodeOfOrigin", "tracked", "trackedEditable", "unitCost.amount", "unitCost.currencyCode"];
export declare const ProductVariantTypeName = "product_variants";
export declare type ProductVariantTypeName = typeof ProductVariantTypeName;
export interface ProductVariant extends ShopifyObjectModel {
    type: ProductVariantTypeName;
    props: ProductVariantProps;
}
export declare type ProductVariantKey = keyof ProductVariantProps;
export {};
