///
declare const _default: {
register: ({ strapi }: {
strapi: import("@strapi/types/dist/core").Strapi;
}) => void;
bootstrap: ({ strapi }: {
strapi: import("@strapi/types/dist/core").Strapi;
}) => Promise;
destroy: ({ strapi }: {
strapi: import("@strapi/types/dist/core").Strapi;
}) => void;
config: {
default: {
host: string;
engine: string;
encryptionKey: string;
};
/**
* Plugin server methods
*/
validator(config: unknown): void;
};
controllers: {
webhook: ({ strapi }: import("./@types").StrapiContext) => {
handleWebhook(ctx: import("koa").Context): Promise<{}>;
};
admin: ({ strapi }: import("./@types").StrapiContext) => {
getSettings(): Promise<{
shops?: {
vendor?: string;
address?: string;
apiKey?: string;
apiSecretKey?: string;
adminApiAccessToken?: string;
isActive?: boolean;
webhooks?: {
topic?: import("./@types/shopify").WebhookSubscriptionTopic.ProductsCreate | import("./@types/shopify").WebhookSubscriptionTopic.ProductsDelete | import("./@types/shopify").WebhookSubscriptionTopic.ProductsUpdate;
method?: string;
service?: string;
}[];
}[];
}>;
restore(): Promise;
getServices(ctx: import("./@types/koa").RequestContext): Promise<{
name: string;
methods: string[];
}[]>;
getShops(ctx: import("./@types/koa").RequestContext): Promise<({
adminApiAccessToken: string;
apiKey: string;
apiSecretKey: string;
id?: number;
createdAt?: string;
updatedAt?: string;
publishedAt?: string;
vendor?: string;
locale?: string[];
documentId?: string;
address?: string;
isActive?: boolean;
} | {
adminApiAccessToken: string;
apiKey: string;
apiSecretKey: string;
id?: number;
createdAt?: string;
updatedAt?: string;
publishedAt?: string;
vendor?: string;
locale?: string[];
documentId?: string;
address?: string;
isActive?: boolean;
webhooks?: {
id?: number;
topic?: import("./@types/shopify").WebhookSubscriptionTopic.ProductsCreate | import("./@types/shopify").WebhookSubscriptionTopic.ProductsDelete | import("./@types/shopify").WebhookSubscriptionTopic.ProductsUpdate;
format?: import("./@types/shopify").WebhookSubscriptionFormat.Json;
callbackUrl?: string;
createdAt?: string;
updatedAt?: string;
publishedAt?: string;
locale?: string;
method?: string;
service?: string;
documentId?: string;
shopifyId?: string;
errors?: string[];
}[];
})[] | import("koa").Context>;
getShop(ctx: import("./@types/koa").RequestContext): Promise<{
apiKey: string;
apiSecretKey: string;
adminApiAccessToken: string;
id?: number;
createdAt?: string;
updatedAt?: string;
publishedAt?: string;
vendor?: string;
locale?: string[];
documentId?: string;
address?: string;
isActive?: boolean;
} | import("koa").Context>;
addShop(ctx: import("./@types/koa").RequestContext): Promise<{
id?: number;
createdAt?: string;
updatedAt?: string;
publishedAt?: string;
vendor?: string;
locale?: string[];
documentId?: string;
address?: string;
apiKey?: string;
apiSecretKey?: string;
adminApiAccessToken?: string;
isActive?: boolean;
webhooks?: {
id?: number;
topic?: import("./@types/shopify").WebhookSubscriptionTopic.ProductsCreate | import("./@types/shopify").WebhookSubscriptionTopic.ProductsDelete | import("./@types/shopify").WebhookSubscriptionTopic.ProductsUpdate;
format?: import("./@types/shopify").WebhookSubscriptionFormat.Json;
callbackUrl?: string;
createdAt?: string;
updatedAt?: string;
publishedAt?: string;
locale?: string;
method?: string;
service?: string;
documentId?: string;
shopifyId?: string;
errors?: string[];
}[];
} | import("koa").Context>;
removeShop(ctx: import("./@types/koa").RequestContext): Promise;
updateShop(ctx: import("./@types/koa").RequestContext): Promise<{
id?: number;
createdAt?: string;
updatedAt?: string;
publishedAt?: string;
vendor?: string;
locale?: string[];
documentId?: string;
address?: string;
apiKey?: string;
apiSecretKey?: string;
adminApiAccessToken?: string;
isActive?: boolean;
} | import("koa").Context>;
};
contentManager: ({ strapi }: import("./@types").StrapiContext) => {
getVendors(ctx: import("./@types/koa").RequestContext): Promise;
getProducts(ctx: import("./@types/koa").RequestContext): Promise;
};
};
routes: {
'content-api': {
type: string;
routes: import("./routes/types").StrapiRoute<"webhook">[];
};
admin: {
type: string;
routes: (import("./routes/types").StrapiRoute<"admin"> | import("./routes/types").StrapiRoute<"contentManager">)[];
};
};
services: {
webhook: ({ strapi }: import("./@types").StrapiContext) => {
create(vendor: string, hooks: {
id?: number;
topic?: import("./@types/shopify").WebhookSubscriptionTopic.ProductsCreate | import("./@types/shopify").WebhookSubscriptionTopic.ProductsDelete | import("./@types/shopify").WebhookSubscriptionTopic.ProductsUpdate;
format?: import("./@types/shopify").WebhookSubscriptionFormat.Json;
callbackUrl?: string;
createdAt?: string;
updatedAt?: string;
publishedAt?: string;
locale?: string;
method?: string;
service?: string;
documentId?: string;
shopifyId?: string;
errors?: string[];
shop?: {
id?: number;
};
}[]): Promise<{
id?: number;
topic?: import("./@types/shopify").WebhookSubscriptionTopic.ProductsCreate | import("./@types/shopify").WebhookSubscriptionTopic.ProductsDelete | import("./@types/shopify").WebhookSubscriptionTopic.ProductsUpdate;
format?: import("./@types/shopify").WebhookSubscriptionFormat.Json;
callbackUrl?: string;
shopifyId?: string;
errors?: string[];
}[]>;
validate(vendor: string, webhook: {
id?: number;
topic?: import("./@types/shopify").WebhookSubscriptionTopic.ProductsCreate | import("./@types/shopify").WebhookSubscriptionTopic.ProductsDelete | import("./@types/shopify").WebhookSubscriptionTopic.ProductsUpdate;
format?: import("./@types/shopify").WebhookSubscriptionFormat.Json;
callbackUrl?: string;
shopifyId?: string;
errors?: string[];
}[]): Promise<{
[x: string]: boolean;
}>;
remove(vendor: string, webhookId: string[]): Promise<{
id: string;
hasError: boolean;
errors: string[];
}[]>;
};
shopify: ({ strapi }: import("./@types").StrapiContext) => {
init(shopsConfig: {
id?: number;
createdAt?: string;
updatedAt?: string;
publishedAt?: string;
vendor?: string;
locale?: string[];
documentId?: string;
address?: string;
apiKey?: string;
apiSecretKey?: string;
adminApiAccessToken?: string;
isActive?: boolean;
webhooks?: {
id?: number;
topic?: import("./@types/shopify").WebhookSubscriptionTopic.ProductsCreate | import("./@types/shopify").WebhookSubscriptionTopic.ProductsDelete | import("./@types/shopify").WebhookSubscriptionTopic.ProductsUpdate;
format?: import("./@types/shopify").WebhookSubscriptionFormat.Json;
callbackUrl?: string;
createdAt?: string;
updatedAt?: string;
publishedAt?: string;
locale?: string;
method?: string;
service?: string;
documentId?: string;
shopifyId?: string;
errors?: string[];
}[];
}[]): Promise;
getProductsById(vendor: string, products: string[]): Promise