import { CreateMarketListingRequest, CreateMarketListingResponse, GetMarketListingRequest, GetMarketListingResponse, QueryMarketListingRequest, QueryMarketListingResponse, UpdateMarketListingRequest, UpdateMarketListingResponse, AppVersionStateChanged, Empty, OldListingChanged, DomainEvent, PromoteRequest, PromoteResponse, CompareRequest, CompareResponse } from './types.impl';
import * as wrapper from './proto/proto-generated';
declare const MarketListingService: typeof wrapper.com.wixpress.devcenter.appmarketlisting.MarketListingService;
export declare type RequestOptions<T = any, U = any> = {
    _?: T;
    requestData: any;
    serviceArtifactId: string;
    serviceProtoClass: U;
    methodName: string;
};
/** create a new market listing */
export declare function createMarketListing(payload: CreateMarketListingRequest): RequestOptions<CreateMarketListingResponse, typeof MarketListingService>;
/** retrieve an existing market listing */
export declare function getMarketListing(payload: GetMarketListingRequest): RequestOptions<GetMarketListingResponse, typeof MarketListingService>;
/** update an existing market listing */
export declare function updateMarketListing(payload: UpdateMarketListingRequest): RequestOptions<UpdateMarketListingResponse, typeof MarketListingService>;
/** consume old listing changed event */
export declare function consumeOldListingChanged(payload: OldListingChanged): RequestOptions<Empty, typeof MarketListingService>;
/** consume app version state changed event */
export declare function consumeAppVersionStateChanged(payload: AppVersionStateChanged): RequestOptions<Empty, typeof MarketListingService>;
/** query market listings */
export declare function queryMarketListing(payload: QueryMarketListingRequest): RequestOptions<QueryMarketListingResponse, typeof MarketListingService>;
/** consume plan domain event */
export declare function consumePlanDomainEvent(payload: DomainEvent): RequestOptions<Empty, typeof MarketListingService>;
export declare function consumeAppDomainEvents(payload: DomainEvent): RequestOptions<Empty, typeof MarketListingService>;
/** promote version */
export declare function promote(payload: PromoteRequest): RequestOptions<PromoteResponse, typeof MarketListingService>;
/** compare versions */
export declare function compare(payload: CompareRequest): RequestOptions<CompareResponse, typeof MarketListingService>;
export {};
