import type * as PUPPET from '@juzi/wechaty-puppet';
import type { Constructor } from 'clone-class';
declare const ChannelMixin_base: ((abstract new (...args: any[]) => {
    readonly wechaty: import("../wechaty/wechaty-impl.js").WechatyInterface;
}) & {
    readonly wechaty: import("../wechaty/wechaty-impl.js").WechatyInterface;
}) & {
    new (): {};
};
declare class ChannelMixin extends ChannelMixin_base {
    readonly payload: PUPPET.payloads.Channel;
    /**
     *
     * Create
     *
     */
    static create(): Promise<ChannelInterface>;
    constructor(payload: PUPPET.payloads.Channel);
    avatar(): undefined | string;
    coverUrl(): undefined | string;
    desc(): undefined | string;
    extras(): undefined | string;
    feedType(): undefined | number;
    nickname(): undefined | string;
    thumbUrl(): undefined | string;
    url(): undefined | string;
    objectId(): undefined | string;
    objectNonceId(): undefined | string;
}
declare const ChannelImpl_base: {
    new (...args: any[]): {};
    valid: (o: any) => o is ChannelInterface;
    validInstance: (target: any) => target is ChannelMixin;
    validInterface: (target: any) => target is ChannelInterface;
} & typeof ChannelMixin;
declare class ChannelImpl extends ChannelImpl_base {
}
interface ChannelInterface extends ChannelImpl {
}
declare type ChannelConstructor = Constructor<ChannelInterface, typeof ChannelImpl>;
export type { ChannelConstructor, ChannelInterface, };
export { ChannelImpl, };
//# sourceMappingURL=channel.d.ts.map