/** * Wechaty Chatbot SDK - https://github.com/wechaty/wechaty * * @copyright 2016 Huan LI (李卓桓) , and * Wechaty Contributors . * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agGroupreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific languagGroupe governing permissions and * limitations under the License. * */ import type * as PUPPET from '@juzi/wechaty-puppet'; import type { TagGroupQueryFilter } from '@juzi/wechaty-puppet/dist/esm/src/schemas/tag.js'; import type { Constructor } from 'clone-class'; import type { TagInterface } from './tag.js'; declare const MixinBase: ((abstract new (...args: any[]) => { readonly wechaty: import("../wechaty/wechaty-impl.js").WechatyInterface; }) & { readonly wechaty: import("../wechaty/wechaty-impl.js").WechatyInterface; }) & ((abstract new (...args: any[]) => {}) & { _pool?: Map | undefined; readonly pool: Map; load & { new (...args: any[]): TagGroupImplInterface; prototype: TagGroupImplInterface; } & import("../user-mixins/poolify.js").PoolifyMixin>(this: L, id: string): TagGroupImplInterface; }) & ObjectConstructor; declare class TagGroupMixin extends MixinBase { readonly id: string; /** * * Instance properties * @ignore * */ payload?: PUPPET.payloads.TagGroup; /** * @hideconstructor */ constructor(id: string); name(): string; static list(): Promise; static createTagGroup(name: string): Promise; static deleteTagGroup(tagGroup: TagGroupInterface): Promise; tags(): Promise; static find(filter: TagGroupQueryFilter): Promise; /** * Force reload data for TagGroup, Sync data from low-level API again. * * @returns {Promise} * @example * await tagGroup.sync() */ sync(): Promise; /** * @ignore */ isReady(): boolean; /** * `ready()` is For FrameWork ONLY! * * Please not to use `ready()` at the user land. * If you want to sync data, use `sync()` instead. * * @ignore */ ready(forceSync?: boolean): Promise; toString(): string; } declare const TagGroupImplBase_base: { new (...args: any[]): {}; valid: (o: any) => o is TagGroupImplInterface; validInstance: (target: any) => target is TagGroupMixin; validInterface: (target: any) => target is TagGroupImplInterface; } & typeof TagGroupMixin; declare class TagGroupImplBase extends TagGroupImplBase_base { } interface TagGroupImplInterface extends TagGroupImplBase { } declare type TagGroupProtectedProperty = 'ready'; declare type TagGroupInterface = Omit; declare const TagGroupImpl_base: { new (...args: any[]): {}; valid: (o: any) => o is TagGroupInterface; validInstance: (target: any) => target is TagGroupImplBase; validInterface: (target: any) => target is TagGroupInterface; } & typeof TagGroupImplBase; declare class TagGroupImpl extends TagGroupImpl_base { } declare type TagGroupConstructor = Constructor>; export type { TagGroupConstructor, TagGroupProtectedProperty, TagGroupInterface, }; export { TagGroupImpl, }; //# sourceMappingURL=tag-group.d.ts.map