import { AssetIdsResponseDto } from "../dtos/asset-ids.response.dto";
import { AssetIdsDto } from "../dtos/asset.dto";
import { AuthDto } from "../dtos/auth.dto";
import { SharedLinkCreateDto, SharedLinkEditDto, SharedLinkLoginDto, SharedLinkResponseDto, SharedLinkSearchDto } from "../dtos/shared-link.dto";
import { BaseService } from "./base.service";
import { OpenGraphTags } from "../utils/misc";
export declare class SharedLinkService extends BaseService {
    getAll(auth: AuthDto, { id, albumId }: SharedLinkSearchDto): Promise<SharedLinkResponseDto[]>;
    login(auth: AuthDto, dto: SharedLinkLoginDto): Promise<{
        sharedLink: SharedLinkResponseDto;
        token: string;
    }>;
    getMine(auth: AuthDto, authTokens: string[]): Promise<SharedLinkResponseDto>;
    get(auth: AuthDto, id: string): Promise<SharedLinkResponseDto>;
    create(auth: AuthDto, dto: SharedLinkCreateDto): Promise<SharedLinkResponseDto>;
    private handleError;
    update(auth: AuthDto, id: string, dto: SharedLinkEditDto): Promise<SharedLinkResponseDto>;
    remove(auth: AuthDto, id: string): Promise<void>;
    private findOrFail;
    addAssets(auth: AuthDto, id: string, dto: AssetIdsDto): Promise<AssetIdsResponseDto[]>;
    removeAssets(auth: AuthDto, id: string, dto: AssetIdsDto): Promise<AssetIdsResponseDto[]>;
    getMetadataTags(auth: AuthDto, defaultDomain?: string): Promise<null | OpenGraphTags>;
    private asToken;
}
