/// <reference types="clownface" />
/// <reference types="rdfjs__namespace" />
import RdfResourceImpl, { Constructor, RdfResource } from '@tpluscode/rdfine';
import type * as RDF from 'rdf-js';
import type { Initializer, ResourceNode } from '@tpluscode/rdfine/RdfResource';
import type { Mixin } from '@tpluscode/rdfine/lib/ResourceFactory';
import type * as Schema from '.';
export interface Schedule<D extends RDF.DatasetCore = RDF.DatasetCore> extends Schema.Intangible<D>, RdfResource<D> {
    byDay: string | undefined;
    byDayTerm: Schema.DayOfWeek | undefined;
    byMonth: number | undefined;
    byMonthDay: number | undefined;
    byMonthWeek: number | undefined;
    duration: Schema.Duration<D> | undefined;
    endDate: Date | undefined;
    endTime: Date | undefined;
    exceptDate: Date | undefined;
    repeatCount: number | undefined;
    repeatFrequency: Schema.Duration<D> | undefined;
    repeatFrequencyLiteral: string | undefined;
    scheduleTimezone: string | undefined;
    startDate: Date | undefined;
    startTime: Date | undefined;
}
export declare function ScheduleMixin<Base extends Constructor>(Resource: Base): {
    new (...input: any[]): {
        byDay: string | undefined;
        byDayTerm: Schema.DayOfWeek | undefined;
        byMonth: number | undefined;
        byMonthDay: number | undefined;
        byMonthWeek: number | undefined;
        duration: Schema.Duration | undefined;
        endDate: Date | undefined;
        endTime: Date | undefined;
        exceptDate: Date | undefined;
        repeatCount: number | undefined;
        repeatFrequency: Schema.Duration | undefined;
        repeatFrequencyLiteral: string | undefined;
        scheduleTimezone: string | undefined;
        startDate: Date | undefined;
        startTime: Date | undefined;
        additionalType: RDF.NamedNode<string> | undefined;
        alternateName: string | undefined;
        description: string | undefined;
        disambiguatingDescription: string | undefined;
        identifier: Schema.PropertyValue<RDF.DatasetCore<RDF.Quad, RDF.Quad>> | undefined;
        identifierLiteral: string | undefined;
        image: Schema.ImageObject<RDF.DatasetCore<RDF.Quad, RDF.Quad>> | undefined;
        mainEntityOfPage: Schema.CreativeWork<RDF.DatasetCore<RDF.Quad, RDF.Quad>> | undefined;
        name: string | undefined;
        potentialAction: Schema.Action<RDF.DatasetCore<RDF.Quad, RDF.Quad>> | undefined;
        sameAs: RDF.NamedNode<string> | undefined;
        subjectOf: Schema.CreativeWork<RDF.DatasetCore<RDF.Quad, RDF.Quad>> | Schema.Event<RDF.DatasetCore<RDF.Quad, RDF.Quad>> | undefined;
        url: RDF.NamedNode<string> | undefined;
        readonly id: import("@tpluscode/rdfine").ResourceIdentifier;
        readonly types: import("@tpluscode/rdfine/lib/TypeCollection").TypeCollection<RDF.DatasetCore<RDF.Quad, RDF.Quad>>;
        readonly pointer: import("clownface").GraphPointer<import("@tpluscode/rdfine").ResourceIdentifier, RDF.DatasetCore<RDF.Quad, RDF.Quad>>;
        readonly unionGraphPointer: import("clownface").MultiPointer<import("@tpluscode/rdfine").ResourceIdentifier, RDF.DatasetCore<RDF.Quad, RDF.Quad>>;
        readonly _graphId: RDF.Quad_Graph;
        readonly _parent?: RdfResource<RDF.DatasetCore<RDF.Quad, RDF.Quad>> | undefined;
        readonly isAnonymous: boolean;
        equals(other: RDF.BlankNode | RdfResource<RDF.DatasetCore<RDF.Quad, RDF.Quad>> | RDF.NamedNode<string> | import("clownface").GraphPointer<import("@tpluscode/rdfine").ResourceIdentifier, RDF.DatasetCore<RDF.Quad, RDF.Quad>> | null | undefined): boolean;
        hasType(type: string | RDF.NamedNode<string>): boolean;
        get<T extends RdfResource<RDF.DatasetCore<RDF.Quad, RDF.Quad>> = RdfResource<RDF.DatasetCore<RDF.Quad, RDF.Quad>>>(property: string | RDF.NamedNode<string>): T;
        get<T_1 extends RdfResource<RDF.DatasetCore<RDF.Quad, RDF.Quad>> = RdfResource<RDF.DatasetCore<RDF.Quad, RDF.Quad>>>(property: string | RDF.NamedNode<string>, options?: import("@tpluscode/rdfine/RdfResource").GetOptions | undefined): T_1 | null;
        getArray<T_2 extends RdfResource<RDF.DatasetCore<RDF.Quad, RDF.Quad>> = RdfResource<RDF.DatasetCore<RDF.Quad, RDF.Quad>>>(property: string | RDF.NamedNode<string>, options?: import("@tpluscode/rdfine/RdfResource").GetOptions | undefined): T_2[];
        getBoolean(property: string | RDF.NamedNode<string>, options?: import("@tpluscode/rdfine/RdfResource").GetOptions | undefined): boolean;
        getString(property: string | RDF.NamedNode<string>): string;
        getString(property: string | RDF.NamedNode<string>, options?: import("@tpluscode/rdfine/RdfResource").GetOptions | undefined): string | null;
        getNumber(property: string | RDF.NamedNode<string>): number | null;
        getNumber(property: string | RDF.NamedNode<string>, options?: import("@tpluscode/rdfine/RdfResource").GetOptions | undefined): number | null;
        toJSON<T_3 extends import("@tpluscode/rdfine/RdfResource").RdfResourceCore<RDF.DatasetCore<RDF.Quad, RDF.Quad>> = any>(): import("@tpluscode/rdfine/lib/toJSON").Jsonified<RdfResource<RDF.DatasetCore<RDF.Quad, RDF.Quad>> & T_3>;
        _getObjects(property: string | RDF.NamedNode<string>, options?: import("@tpluscode/rdfine/RdfResource").GetOptions | undefined): import("clownface").MultiPointer<RDF.Term, RDF.DatasetCore<RDF.Quad, RDF.Quad>>;
        _create<T_4 extends RdfResource<RDF.DatasetCore<RDF.Quad, RDF.Quad>>>(term: import("clownface").GraphPointer<RDF.Term, RDF.DatasetCore<RDF.Quad, RDF.Quad>>, mixins?: any[] | [Constructor<import("@tpluscode/rdfine/RdfResource").RdfResourceCore<RDF.DatasetCore<RDF.Quad, RDF.Quad>>>, ...any[]] | undefined, options?: import("@tpluscode/rdfine/lib/ResourceFactory").ResourceCreationOptions<RDF.DatasetCore<RDF.Quad, RDF.Quad>, T_4> | undefined): T_4 & import("@tpluscode/rdfine").ResourceIndexer<RdfResource<RDF.DatasetCore<RDF.Quad, RDF.Quad>>>;
    };
    factory: import("@tpluscode/rdfine/lib/ResourceFactory").ResourceFactory<RDF.DatasetCore<RDF.Quad, RDF.Quad>, RdfResource<RDF.DatasetCore<RDF.Quad, RDF.Quad>>, any>;
    __mixins: any[];
    __properties: Map<string, import("@tpluscode/rdfine/lib/decorators/property").PropertyMeta<any>>;
    __ns?: import("@rdfjs/namespace").NamespaceBuilder | undefined;
} & Base;
export declare namespace ScheduleMixin {
    var appliesTo: RDF.NamedNode<"http://schema.org/Schedule">;
    var Class: typeof ScheduleImpl;
}
declare const ScheduleImpl_base: {
    new (...input: any[]): {
        byDay: string | undefined;
        byDayTerm: RDF.NamedNode<"http://schema.org/Friday"> | RDF.NamedNode<"http://schema.org/Monday"> | RDF.NamedNode<"http://schema.org/PublicHolidays"> | RDF.NamedNode<"http://schema.org/Saturday"> | RDF.NamedNode<"http://schema.org/Sunday"> | RDF.NamedNode<"http://schema.org/Thursday"> | RDF.NamedNode<"http://schema.org/Tuesday"> | RDF.NamedNode<"http://schema.org/Wednesday"> | undefined;
        byMonth: number | undefined;
        byMonthDay: number | undefined;
        byMonthWeek: number | undefined;
        duration: Schema.Duration<RDF.DatasetCore<RDF.Quad, RDF.Quad>> | undefined;
        endDate: Date | undefined;
        endTime: Date | undefined;
        exceptDate: Date | undefined;
        repeatCount: number | undefined;
        repeatFrequency: Schema.Duration<RDF.DatasetCore<RDF.Quad, RDF.Quad>> | undefined;
        repeatFrequencyLiteral: string | undefined;
        scheduleTimezone: string | undefined;
        startDate: Date | undefined;
        startTime: Date | undefined;
        additionalType: RDF.NamedNode<string> | undefined;
        alternateName: string | undefined;
        description: string | undefined;
        disambiguatingDescription: string | undefined;
        identifier: Schema.PropertyValue<RDF.DatasetCore<RDF.Quad, RDF.Quad>> | undefined;
        identifierLiteral: string | undefined;
        image: Schema.ImageObject<RDF.DatasetCore<RDF.Quad, RDF.Quad>> | undefined;
        mainEntityOfPage: Schema.CreativeWork<RDF.DatasetCore<RDF.Quad, RDF.Quad>> | undefined;
        name: string | undefined;
        potentialAction: Schema.Action<RDF.DatasetCore<RDF.Quad, RDF.Quad>> | undefined;
        sameAs: RDF.NamedNode<string> | undefined;
        subjectOf: Schema.CreativeWork<RDF.DatasetCore<RDF.Quad, RDF.Quad>> | Schema.Event<RDF.DatasetCore<RDF.Quad, RDF.Quad>> | undefined;
        url: RDF.NamedNode<string> | undefined;
        readonly id: import("@tpluscode/rdfine").ResourceIdentifier;
        readonly types: import("@tpluscode/rdfine/lib/TypeCollection").TypeCollection<RDF.DatasetCore<RDF.Quad, RDF.Quad>>;
        readonly pointer: import("clownface").GraphPointer<import("@tpluscode/rdfine").ResourceIdentifier, RDF.DatasetCore<RDF.Quad, RDF.Quad>>;
        readonly unionGraphPointer: import("clownface").MultiPointer<import("@tpluscode/rdfine").ResourceIdentifier, RDF.DatasetCore<RDF.Quad, RDF.Quad>>;
        readonly _graphId: RDF.Quad_Graph;
        readonly _parent?: RdfResource<RDF.DatasetCore<RDF.Quad, RDF.Quad>> | undefined;
        readonly isAnonymous: boolean;
        equals(other: RDF.BlankNode | RdfResource<RDF.DatasetCore<RDF.Quad, RDF.Quad>> | RDF.NamedNode<string> | import("clownface").GraphPointer<import("@tpluscode/rdfine").ResourceIdentifier, RDF.DatasetCore<RDF.Quad, RDF.Quad>> | null | undefined): boolean;
        hasType(type: string | RDF.NamedNode<string>): boolean;
        get<T extends RdfResource<RDF.DatasetCore<RDF.Quad, RDF.Quad>> = RdfResource<RDF.DatasetCore<RDF.Quad, RDF.Quad>>>(property: string | RDF.NamedNode<string>): T;
        get<T_1 extends RdfResource<RDF.DatasetCore<RDF.Quad, RDF.Quad>> = RdfResource<RDF.DatasetCore<RDF.Quad, RDF.Quad>>>(property: string | RDF.NamedNode<string>, options?: import("@tpluscode/rdfine/RdfResource").GetOptions | undefined): T_1 | null;
        getArray<T_2 extends RdfResource<RDF.DatasetCore<RDF.Quad, RDF.Quad>> = RdfResource<RDF.DatasetCore<RDF.Quad, RDF.Quad>>>(property: string | RDF.NamedNode<string>, options?: import("@tpluscode/rdfine/RdfResource").GetOptions | undefined): T_2[];
        getBoolean(property: string | RDF.NamedNode<string>, options?: import("@tpluscode/rdfine/RdfResource").GetOptions | undefined): boolean;
        getString(property: string | RDF.NamedNode<string>): string;
        getString(property: string | RDF.NamedNode<string>, options?: import("@tpluscode/rdfine/RdfResource").GetOptions | undefined): string | null;
        getNumber(property: string | RDF.NamedNode<string>): number | null;
        getNumber(property: string | RDF.NamedNode<string>, options?: import("@tpluscode/rdfine/RdfResource").GetOptions | undefined): number | null;
        toJSON<T_3 extends import("@tpluscode/rdfine/RdfResource").RdfResourceCore<RDF.DatasetCore<RDF.Quad, RDF.Quad>> = any>(): import("@tpluscode/rdfine/lib/toJSON").Jsonified<RdfResource<RDF.DatasetCore<RDF.Quad, RDF.Quad>> & T_3>;
        _getObjects(property: string | RDF.NamedNode<string>, options?: import("@tpluscode/rdfine/RdfResource").GetOptions | undefined): import("clownface").MultiPointer<RDF.Term, RDF.DatasetCore<RDF.Quad, RDF.Quad>>;
        _create<T_4 extends RdfResource<RDF.DatasetCore<RDF.Quad, RDF.Quad>>>(term: import("clownface").GraphPointer<RDF.Term, RDF.DatasetCore<RDF.Quad, RDF.Quad>>, mixins?: any[] | [Constructor<import("@tpluscode/rdfine/RdfResource").RdfResourceCore<RDF.DatasetCore<RDF.Quad, RDF.Quad>>>, ...any[]] | undefined, options?: import("@tpluscode/rdfine/lib/ResourceFactory").ResourceCreationOptions<RDF.DatasetCore<RDF.Quad, RDF.Quad>, T_4> | undefined): T_4 & import("@tpluscode/rdfine").ResourceIndexer<RdfResource<RDF.DatasetCore<RDF.Quad, RDF.Quad>>>;
    };
    factory: import("@tpluscode/rdfine/lib/ResourceFactory").ResourceFactory<RDF.DatasetCore<RDF.Quad, RDF.Quad>, RdfResource<RDF.DatasetCore<RDF.Quad, RDF.Quad>>, any>;
    __mixins: any[];
    __properties: Map<string, import("@tpluscode/rdfine/lib/decorators/property").PropertyMeta<any>>;
    __ns?: import("@rdfjs/namespace").NamespaceBuilder | undefined;
} & typeof RdfResourceImpl;
declare class ScheduleImpl extends ScheduleImpl_base {
    constructor(arg: ResourceNode, init?: Initializer<Schedule>);
    static readonly __mixins: Mixin[];
}
export {};
